国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

JAVA版排序算法之快速排序示例

2019-11-26 13:20:16
字體:
來源:轉載
供稿:網友

本文實例講述了JAVA快速排序實現方法。分享給大家供大家參考,具體如下:

package com.ethan.sort.java;import java.util.Arrays;import java.util.Iterator;import java.util.LinkedList;import java.util.List;public class QuickSort {  public static <E extends Comparable<? super E>> List<E> quickSort(List<E> arr) {    if(arr.size()<=1) {      return arr;    }    E pivot = arr.get(0);    //每次遞歸都會初始化,每次list都不一樣    List<E> less = new LinkedList<E>();    //樞軸,這個集合只有一個元素,每次都初始化,都不一樣    List<E> pivotList = new LinkedList<E>();    List<E> more = new LinkedList<E>();    for(E i:arr){      if(i.compareTo(pivot)<0) {        less.add(i);      } else if(i.compareTo(pivot)>0) {        more.add(i);      } else {        pivotList.add(i);        //System.out.println("p---->"+i);      }    }    //遞歸    less = quickSort(less);//比pivot小的    //又進行quicksort,對more,再分成兩部分    more = quickSort(more);    //拼接 less pivot more    less.addAll(pivotList);    //pv-------->[23],到最后只有一個元素了    System.out.println("pv-------->"+pivotList);    less.addAll(more);    return less;  }  /**   * @param args   */  public static void main(String[] args) {    // TODO Auto-generated method stub    Integer[] arr = {23,2,8,43,22,32,4,5,34};    List l = quickSort(Arrays.asList(arr));    Iterator i = l.iterator();    while(i.hasNext()) {      System.out.println(i.next());    }  }}

希望本文所述對大家java程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赤城县| 上饶市| 班戈县| 台州市| 茌平县| 江阴市| 濮阳县| 正阳县| 秭归县| 丽水市| 惠水县| 连云港市| 海宁市| 绥滨县| 张掖市| 临安市| 桐柏县| 彭山县| 井陉县| 句容市| 定南县| 通山县| 五莲县| 咸阳市| 建宁县| 商都县| 明光市| 巴青县| 郓城县| 密云县| 高陵县| 饶河县| 新干县| 延长县| 柏乡县| 汝南县| 甘泉县| 颍上县| 临朐县| 新平| 隆安县|