国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務(wù)器之家 - 編程語言 - JAVA教程 - Java基于分治法實(shí)現(xiàn)的快速排序算法示例

Java基于分治法實(shí)現(xiàn)的快速排序算法示例

2021-03-07 12:25誰將舊詞譯成新曲 JAVA教程

這篇文章主要介紹了Java基于分治法實(shí)現(xiàn)的快速排序算法,結(jié)合實(shí)例形式分析了java基于分治法的快速排序相關(guān)實(shí)現(xiàn)技巧,代碼中備有較為詳細(xì)的注釋說明便于理解,需要的朋友可以參考下

本文實(shí)例講述了Java基于分治法實(shí)現(xiàn)的快速排序算法。分享給大家供大家參考,具體如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
package cn.nwsuaf.quick;
/**
 * 隨機(jī)產(chǎn)生20個數(shù),并對其進(jìn)行快速排序
 *
 * @author 劉永浪
 *
 */
public class Quick {
  /**
   * 交換函數(shù),實(shí)現(xiàn)數(shù)組中兩個數(shù)的交換操作
   *
   * @param array
   *      待操作數(shù)組
   * @param i
   *      交換數(shù)組的第一個下標(biāo)
   * @param j
   *      交換數(shù)組的第二個下標(biāo)
   */
  public static void swap(int[] array, int i, int j) {
    int temp = array[i];
    array[i] = array[j];
    array[j] = temp;
  }
  /**
   * 分治法劃分算法
   *
   * @param array
   *      待操作數(shù)組
   * @param low
   *      劃分中模塊的起始地址
   * @param height
   *      劃分中模塊的結(jié)束地址
   * @return 基準(zhǔn)元素的位置下標(biāo)
   */
  public static int quick(int[] array, int low, int height) {
    // 設(shè)置第一個數(shù)為基準(zhǔn)元素
    int pivot = array[low];
    // 從右向左掃描,查找第1個小于pivot的元素
    while (low < height) {
      while (low < height && array[height] >= pivot)
        height--;
      // 表示找到了小于pivot的元素
      if (low < height)
        // 交換后low執(zhí)行+1操作
        swap(array, low++, height);
      // 從左向右掃描,查找第1個大于pivot的元素
      while (low < height && array[low] <= pivot)
        low++;
      // 表示找到了大于pivot的元素
      if (low < height)
        // 交換后heigh執(zhí)行-1操作
        swap(array, low, height--);
    }
    // 返回基準(zhǔn)元素最終位置下標(biāo)
    return height;
  }
  /**
   * 對array快速排序
   *
   * @param array
   *      待操作數(shù)組
   * @param low
   *      低位
   * @param height
   *      高位
   */
  public static void sort(int[] array, int low, int height) {
    // 記錄劃分后的基準(zhǔn)元素所對應(yīng)的位置
    int temp;
    // 僅當(dāng)區(qū)間長度大于1時(shí)才須排序
    if (low < height) {
      // 對array做劃分
      temp = quick(array, low, height);
      // 對左區(qū)間遞歸排序
      sort(array, low, temp - 1);
      // 對右區(qū)間遞歸排序
      sort(array, temp + 1, height);
    }
  }
  public static void main(String[] args) {
    int[] array = new int[20];
    System.out.println("服務(wù)器之家測試結(jié)果:");
    System.out.print("排序前序列:");
    for (int i = 0; i < array.length; i++) {
      // 隨機(jī)產(chǎn)生20個0-99的整數(shù)
      array[i] = (int) (Math.random() * 100);
      System.out.print(array[i] + " ");
    }
    System.out.print("\n排序后序列:");
    sort(array, 0, array.length - 1);
    for (int i = 0; i < array.length; i++)
      System.out.print(array[i] + " ");
  }
}

運(yùn)行結(jié)果:

Java基于分治法實(shí)現(xiàn)的快速排序算法示例

文所述對大家java程序設(shè)計(jì)有所幫助。

原文鏈接:http://blog.csdn.net/lylwanan/article/details/41447881

延伸 · 閱讀

精彩推薦
  • JAVA教程基于CXF搭建webService的實(shí)例講解

    基于CXF搭建webService的實(shí)例講解

    下面小編就為大家?guī)硪黄贑XF搭建webService的實(shí)例講解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    水波粼粼7022021-02-03
  • JAVA教程利用spring AOP記錄用戶操作日志的方法示例

    利用spring AOP記錄用戶操作日志的方法示例

    這篇文章主要給大家介紹了關(guān)于利用spring AOP記錄用戶操作日志的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋...

    ngulc4452020-11-30
  • JAVA教程完美解決Eclipse 項(xiàng)目有紅感嘆號的問題

    完美解決Eclipse 項(xiàng)目有紅感嘆號的問題

    下面小編就為大家?guī)硪黄昝澜鉀QEclipse 項(xiàng)目有紅感嘆號的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    jingxian3002020-07-27
  • JAVA教程老生常談Java反射機(jī)制(必看篇)

    老生常談Java反射機(jī)制(必看篇)

    下面小編就為大家?guī)硪黄仙U凧ava反射機(jī)制(必看篇)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    Java教程網(wǎng)2712020-11-17
  • JAVA教程java基于反射得到對象屬性值的方法

    java基于反射得到對象屬性值的方法

    這篇文章主要介紹了java基于反射得到對象屬性值的方法,結(jié)合實(shí)例形式分析了java基于反射獲取對象屬性值的相關(guān)實(shí)現(xiàn)方法與操作技巧,需要的朋友可以參考下...

    ITshu4422020-09-02
  • JAVA教程Java8中Optional類型和Kotlin中可空類型的使用對比

    Java8中Optional類型和Kotlin中可空類型的使用對比

    這篇文章主要給大家介紹了關(guān)于Java8中Optional類型和Kotlin中可空類型的使用對比,文中通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定...

    KotinChina編程社區(qū)11662021-01-05
  • JAVA教程Eclipse查看開發(fā)包jar里源代碼的方法

    Eclipse查看開發(fā)包jar里源代碼的方法

    這篇文章主要介紹了Eclipse查看開發(fā)包jar里源代碼的方法的相關(guān)資料,需要的朋友可以參考下...

    CSDN3692020-11-27
  • JAVA教程輕松掌握J(rèn)ava適配器模式

    輕松掌握J(rèn)ava適配器模式

    這篇文章主要幫助大家輕松掌握J(rèn)ava適配器模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下...

    斷了聯(lián)系1712020-06-19
主站蜘蛛池模板: 黄色精品网站 | 99精品国产一区二区三区 | 国产成人在线播放 | 国产精品永久免费视频 | 色爱综合网| 综合色爱 | 精品久久久久久久久久久下田 | 国产 欧美 日韩 一区 | 一级欧美一级日韩 | 四虎影视永久免费观看 | 黄色在线免费 | 亚洲国产精品美女 | 在线激情视频 | 超碰日韩 | 国产精品久久久久久久午夜片 | 精品国产不卡一区二区三区 | 日韩精品一区二区三区视频播放 | 在线免费成人 | av在线免费播 | 欧美一区二区三区黄色 | 日日摸夜夜添夜夜添精品视频 | 米奇色网 | 国产精品69毛片高清亚洲 | 欧州一区二区 | 好吊色欧美一区二区三区四区 | 亚洲永久免费视频 | www.夜夜骑| 一区二区亚洲 | 日韩福利视频 | 欧美成人高清视频 | 国产精品不卡在线播放 | 久久国产99 | yellow视频在线| 激情一区二区三区 | 欧美一区二区三区久久精品 | 亚洲国产一区二区a毛片 | 国产日韩精品一区 | 午夜影院在线观看 | 综合色婷婷 | 欧美激情精品久久久久久 | 日韩成人免费 |