88国产精品视频一区二区三区_久久亚洲a v_亚洲aⅴ在线观看_成人直播视频_国产理论在线播放_久久久久一区二区三区四区_亚洲av成人精品一区二区三区在线播放 _伦理av在线

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  千鋒問問  > 歸并算法java實(shí)現(xiàn)方法怎么操作

歸并算法java實(shí)現(xiàn)方法怎么操作

匿名提問者 2023-10-16 15:45:42

歸并算法java實(shí)現(xiàn)方法怎么操作

推薦答案

  遞歸實(shí)現(xiàn),遞歸是最常見的歸并排序?qū)崿F(xiàn)方式。這個(gè)方法將數(shù)組分為左右兩部分,分別對(duì)左右兩部分進(jìn)行遞歸排序,然后再合并它們。

Java教程

  public class MergeSort {

  public static void merge(int[] arr, int left, int mid, int right) {

  int n1 = mid - left + 1;

  int n2 = right - mid;

  int[] L = new int[n1];

  int[] R = new int[n2];

  for (int i = 0; i < n1; i++) {

  L[i] = arr[left + i];

  }

  for (int j = 0; j < n2; j++) {

  R[j] = arr[mid + 1 + j];

  }

  int i = 0, j = 0, k = left;

  while (i < n1 && j < n2) {

  if (L[i] <= R[j]) {

  arr[k] = L[i];

  i++;

  } else {

  arr[k] = R[j];

  j++;

  }

  k++;

  }

  while (i < n1) {

  arr[k] = L[i];

  i++;

  k++;

  }

  while (j < n2) {

  arr[k] = R[j];

  j++;

  k++;

  }

  }

  public static void mergeSort(int[] arr, int left, int right) {

  if (left < right) {

  int mid = left + (right - left) / 2;

  mergeSort(arr, left, mid);

  mergeSort(arr, mid + 1, right);

  merge(arr, left, mid, right);

  }

  }

  public static void main(String[] args) {

  int[] arr = {12, 11, 13, 5, 6, 7};

  mergeSort(arr, 0, arr.length - 1);

  System.out.println("Sorted array:");

  for (int num : arr) {

  System.out.print(num + " ");

  }

  }

  }

 

  這個(gè)方法使用遞歸將數(shù)組分成左右兩半,然后分別對(duì)左右兩半進(jìn)行排序,最后合并左右兩半得到有序數(shù)組。

其他答案

  •   迭代實(shí)現(xiàn),迭代方法不使用遞歸,而是使用循環(huán)來(lái)實(shí)現(xiàn)歸并排序。它需要使用一個(gè)輔助數(shù)組來(lái)保存中間結(jié)果,以避免頻繁創(chuàng)建和銷毀數(shù)組。

      public class MergeSort {

      public static void merge(int[] arr, int left, int mid, int right) {

      int n1 = mid - left + 1;

      int n2 = right - mid;

      int[] L = new int[n1];

      int[] R = new int[n2];

      for (int i = 0; i < n1; i++) {

      L[i] = arr[left + i];

      }

      for (int j = 0; j < n2; j++) {

      R[j] = arr[mid + 1 + j];

      }

      int i = 0, j = 0, k = left;

      while (i < n1 && j < n2) {

      if (L[i] <= R[j]) {

      arr[k] = L[i];

      i++;

      } else {

      arr[k] = R[j];

      j++;

      }

      k++;

      }

      while (i < n1) {

      arr[k] = L[i];

      i++;

      k++;

      }

      while (j < n2) {

      arr[k] = R[j];

      j++;

      k++;

      }

      }

      public static void mergeSort(int[] arr) {

      int n = arr.length;

      for (int currentSize = 1; currentSize < n; currentSize *= 2) {

      for (int left = 0; left < n - 1; left += 2 * currentSize) {

      int mid = Math.min(left + currentSize - 1, n - 1);

      int right = Math.min(left + 2 * currentSize - 1, n - 1);

      merge(arr, left, mid, right);

      }

      }

      }

      public static void main(String[] args) {

      int[] arr = {12, 11, 13, 5, 6, 7};

      mergeSort(arr);

      System.out.println("Sorted array:");

      for (int num : arr) {

      System.out.print(num + " ");

      }

      }

      }

      這個(gè)方法使用循環(huán)迭代來(lái)排序數(shù)組,避免了遞歸調(diào)用,同時(shí)利用了一個(gè)輔助數(shù)組進(jìn)行合并操作。

  •    自底向上的迭代實(shí)現(xiàn),這種實(shí)現(xiàn)方式也是使用迭代,但與上述方法略有不同,它是自底向上的迭代,從單個(gè)元素開始,逐漸增加合并的區(qū)間大小。

      ```java

      public class MergeSort {

      public static void merge(int[] arr, int left, int mid, int right) {

      int n1 = mid - left + 1;

      int n2 = right - mid;

      int[] L = new int[n1];

      int[] R = new int[n2];

      for (int i = 0; i < n1; i++) {

      L[i] = arr[left + i];

      }

      for (int j = 0; j < n2; j++) {

      R[j] = arr[mid + 1 + j];

      }

      int i = 0, j = 0, k = left;

      while (i < n1 && j < n2) {

      if (L[i] <= R[j]) {

      arr[k] = L[i];

      i++;

      } else {

      arr[k] = R[j];

      j++;

      }

      k++;

      }

      while (i < n1) {

      arr[k] = L[i];

      i++;

      k++;

      }

      while (j < n2) {

      arr[k] = R[j];

      j++;

      k++;

      }

      }

      public static void mergeSort(int[] arr) {

      int n = arr.length;

      for (int currentSize = 1; currentSize < n; currentSize *= 2) {

西西午夜视频| 男人午夜影院| 精品人妻中文无码av在线| 久久乐国产精品| 成人性生交大合| 97人澡人人添人人爽欧美| 91嫩草在线播放| 国产麻豆剧果冻传媒观看hd高清| 国产成人麻豆精品午夜在线| 久久久久久少妇| 欧美激情图片小说| 国产精品久久久久无码av色戒| 青娱乐国产精品视频| www.中文字幕在线| 久久www视频| 中文字幕一区二区三区乱码| 日本精品一区二区三区不卡无字幕| 亚洲精品免费一区二区三区| 日韩美女视频中文字幕| 91产国在线观看动作片喷水| 日韩一区视频在线| 亚洲天堂视频在线观看| 亚洲福利影片在线| 日韩欧美的一区| 91麻豆精品国产自产在线观看一区| 欧美性猛交xxxx黑人| 欧美视频在线视频| 国产亚洲人成网站在线观看 | 45www国产精品网站| 欧美国产中文字幕| 色综合久久中文字幕综合网小说| 色噜噜久久综合伊人一本| 日韩高清免费在线| 在线视频一区二区| 欧美美女18p| 久久www免费人成精品| 日韩动漫在线观看| 久久久99精品视频| 妺妺窝人体色www在线小说| 午夜激情福利在线| 麻豆av免费看| 日本综合在线观看| 日本一级黄色大片| 国产一区二区视频免费观看| 午夜精品久久久久久久99| √天堂资源中文www| 最近97中文超碰在线| aaa在线观看| 欧洲成人综合网| 午夜精品久久久久久毛片| 国产成人一二片| 欧美国产激情| 国产日韩欧美一区在线| 国产麻豆视频一区二区| 久久一区亚洲| 91在线国产福利| 亚洲色图欧洲色图| 色综合激情久久| 日韩大陆毛片av| 国产免费高清一区| 在线观看18视频网站| 奇米视频888| 很污很黄的网站| 91成品人影院| 快色在线观看| 日本五码在线| av激情成人网| 91精品综合久久久久久久久久久| 亚洲精选91| 国产一区二区三区四区五区美女| 欧美亚洲动漫精品| 日韩经典第一页| 日本一区不卡| 久久久久久久国产精品毛片| 欧美 日韩 国产 成人 在线 | 一区中文字幕| 亚洲精选成人| 精品视频免费看| 欧美大片免费观看| 日本精品免费在线观看| 日本一区二区三区久久| 精品中文字幕不卡在线视频| 日韩男人天堂| 日韩免费va| 亚洲国内欧美| 欧美高清视频一二三区| 九九久久综合网站| 无遮挡又爽又刺激的视频| 永久免费未视频| 午夜视频福利在线| 中文字幕在线永久在线视频| 欧美系列电影免费观看| 国产精品综合久久| 色哟哟网站入口亚洲精品| 每日在线观看av| www.97视频| 500福利第一精品导航| 久久一区二区中文字幕| 久久五月婷婷丁香社区| 精品国产污网站| 91免费欧美精品| 手机看片一级片| 一区二区视频网站| 中文字幕电影在线观看| 午夜精品婷婷| 精品国产电影一区二区| www.国产在线视频| 国产 日韩 欧美 成人| brazzers欧美精品| eeuss鲁一区二区三区| 国产99久久久精品| 日韩精品一区二区在线观看| 一本二本三本亚洲码| 免费一级黄色录像| 成年人在线播放| 亚洲女人av| 欧美性生活久久| 在线看成人av电影| 国产哺乳奶水91在线播放| 亚洲免费福利| 老色鬼精品视频在线观看播放| 日本久久精品电影| 欧美一区二三区| 国产又粗又猛又爽又黄的视频小说| 永久免费不卡在线观看黄网站| 激情欧美一区| 91精品1区2区| 国产爆乳无码一区二区麻豆| 男人天堂中文字幕| 国产精品久久麻豆| 国产精品婷婷| 色偷偷偷综合中文字幕;dd| 在线观看亚洲免费视频| 中文先锋资源| 亚洲男人都懂第一日本| 中文一区在线播放| 久久久久久久久久久久av| 国产freexxxx性播放麻豆| 欧美野外多人交3| 国产成+人+综合+亚洲欧美| 国产成人精品免费| 最近的2019中文字幕免费一页 | 黄色的网站免费| 精品国产亚洲一区二区三区在线| 国产精品亚洲一区二区三区妖精 | 日韩一区二区三区视频在线 | 欧美高清激情视频| 国产三级国产精品国产国在线观看| 日本在线天堂| 国内精品福利| 91精品国产丝袜白色高跟鞋| 青青成人在线| 中文字幕2020第一页| 一根才成人网| 2023国产一二三区日本精品2022| 欧美高清性猛交| 久久午夜无码鲁丝片| 手机av在线| 久久久久久久久一| 欧美在线欧美在线| 人妻丰满熟妇av无码区| 黄色免费在线观看网站| 亚洲日本欧美天堂| 18禁裸男晨勃露j毛免费观看| 狠狠艹夜夜干| 国产精品911| 精品伊人久久大线蕉色首页| www成人在线| 成人影院在线观看| 成人性生交大合| 秋霞久久久久久一区二区| 九色精品高清在线播放| 久久综合影音| 国产精品久久亚洲7777| 四虎精品成人a在线观看| 国产精品hd| 国产一区二区免费| 欧美黄色免费观看| 日本高清中文字幕在线| 一区二区三区中文字幕精品精品 | 九九视频直播综合网| 成人午夜视频在线播放| 美女主播精品视频一二三四| 欧美性猛交xxxxx水多| 6080国产精品| 美女av电影| 久久精品午夜| 麻豆成人在线看| 色无极影院亚洲| 蜜桃视频在线观看播放| 欧美不卡激情三级在线观看| 国产xxxxx视频| 青草久久伊人| 色94色欧美sute亚洲线路一ni | 国产av人人夜夜澡人人爽麻豆| 韩国97影院| 亚洲一区二区三区视频在线 | www天堂在线| 亚洲欧美日韩国产综合精品二区| 国精产品一区二区|