日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 排序算法總結

排序算法總結

來源:程序員人生   發布時間:2015-06-05 08:51:44 閱讀次數:3255次
代碼寫久了,越發的覺得寫到后來回歸的都是基礎。頓時覺得后悔大1大2沒好好學這些計算機基礎課程,虧大了。
總結下排序算法:
package 排序算法; /** * 1.選擇排序 * 2.插入排序 * 3.歸并排序 * 4.快速排序 * * @author Administrator * */ public class 4種排序算法 { public static void main(String[] args) { int[] arr = { 2, 5, 6, 7, 4, 3, 1, 1, 3, 4, 5, 1, 3, 6, 3 }; // selectSort(arr); // insertedSort(arr); // mergeSort(arr, 0, arr.length - 1); quickSort(arr, 0, arr.length - 1); out(arr); } // 輸出 public static void out(int[] arr) { for (int e : arr) System.out.print(e + ","); } // 1.選擇排序 public static void selectSort(int[] a) { for (int i = 0; i < a.length; i++) for (int j = i + 1; j < a.length; j++) { int key = a[i]; if (key > a[j]) { a[i] = a[j]; a[j] = key; } } } // 2.插入排序 public static void insertedSort(int[] a) { for (int i = 1; i < a.length; i++) { int key = a[i]; int j = i - 1; while (j >= 0 && key < a[j]) { a[j + 1] = a[j]; a[j] = key; j--; } } } // 3.歸并排序(分治法) public static void mergeSort(int[] a, int low, int high) { if (low < high) { int mid = (low + high) / 2; // 遞歸到最小原子 mergeSort(a, low, mid); mergeSort(a, mid + 1, high); // 合并數組 mergeArray(a, low, mid, high); } } // 合并數組 private static void mergeArray(int[] a, int low, int mid, int high) { int N = high - low; int[] temp = new int[N + 1]; int i = low, j = mid + 1; int m = mid, n = high; int k = 0; while (i <= m && j <= n) temp[k++] = (a[i] < a[j] ? a[i++] : a[j++]); while (i <= m) temp[k++] = a[i++]; while (j <= n) temp[k++] = a[j++]; for (i = 0; i < k; i++) a[low + i] = temp[i]; } // 4.快速排序(分治法) public static void quickSort(int[] a, int low, int high) { if (low < high) { int r = adjustArray(a, low, high); quickSort(a, low, r - 1); quickSort(a, r + 1, high); } } // 提取數組中的首個元素,分割。小的元素放在<strong>標志</strong>的左側,比 // 標志大的元素放在其右側,最后返回標志元素的位置 private static int adjustArray(int[] a, int low, int high) { int i = low, j = high; int spcValue = a[low]; while (i < j) { while (a[j] >= spcValue && i < j) j--; if (a[j] < spcValue) a[i++] = a[j]; while (a[i] <= spcValue && i < j) i++; if (a[i] > spcValue) a[j--] = a[i]; } a[i] = spcValue; return i; } }


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 牛牛影视一区二区三区免费看 | 国产精品一区二区三区不卡 | 亚洲激情视频在线播放 | www一区 | 在线视频91| 久久久久美女 | 老司机看毛片 | 国产成人精品电影 | 亚洲精品乱码久久久久久蜜桃麻豆 | 中文字幕第2页 | 91午夜视频 | 青草久久久 | 欧美激情自拍偷拍 | 精品久久久久久久久久 | 亚洲 欧美 日韩 在线 | 日韩av在线一区二区三区 | 国产激情视频在线 | 成人欧美一区二区三区在线湿哒哒 | 国产精品欧美一区二区三区不卡 | 久久精品一区二区 | 日韩av免费 | 91伦理视频在线观看 | 亚洲 精品 综合 精品 自拍 | 日韩不卡一区二区 | 免费放黄网站在线播放 | 欧美专区在线播放 | 午夜欧美一区二区三区在线播放 | 欧美国产在线视频 | 一本一本久久a久久精品综合小说 | 久久久一区二区 | 99精品在线观看 | 日本精品一区二区三区四区的功能 | 欧美xxxx网站 | 久久专区 | 91精品国产91综合久久蜜臀 | 久久91精品国产91久久跳 | 精品嫩草| 亚洲在线中文字幕 | 久久久久久99精品 | 干片先生在线观看 | 亚洲一区二区三区在线看 |