<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA四種基本排序的總結

     

    JAVA四種基本排序,包括冒泡法,插入法,選擇法,SHELL排序法.其中選擇法是冒泡法的改進,SHELL排序法是 插入法的改進.所以從根本上來說可以歸納為兩種不同的排序方法::插入法&冒泡法

    插入法:遍歷排序集合,每到一個元素時,都要將這個元素與所有它之前的元素遍歷比較一遍,讓符合排序順序的元素挨個移動到當前范圍內它最應該出現的位置。交換是相鄰遍歷移動,雙重循環控制實現.這種排序法屬于地頭蛇類型,在我的地牌上我要把所有的東西按一定的順序規整,過來一個,規整一個.
    處理代碼如下:

    public void sort(int[] data) {
       int temp; 
       for(int i=1; i〈data.length; i++){
          for(int j=i; (j〉0)&&(data[j]〉data[j-1]); j--){
             temp
    =date[j]; 
             data[j]
    =data[j-1]; 
             data[j
    -1]=temp; 
          }
       } 
    }


    二冒泡法:比較容易,它的內層循環保證遍歷一次后,集合中最小(大)元素出現在它的正確位置,下一次就是次小元素。。。該方法在集合分布的各種情況下交換移動的次數基本不變,屬于最慢的一種排序。實現也是雙重循環控制。這種排序法屬于過江龍,就是要找到極端,但是過獎龍也有大哥,二哥等,所以他們只能是大哥挑了二哥挑.
    處理代碼如下:

    public static int [] maopao(int[] data) {
       int temp; 
       for(int i=0; i〈data.length-1; i++){
          for(int j=i+1; j〈data.length; j++){
          if(data[i]〈data[j]){
             temp
    =data[i]; 
             data[i]
    =data[j]; 
             data[j]
    =temp; 
          } 
       }

    return data; 


    三選擇法:該方法只是通過遍歷集合記錄最小(大)元素的位置,一次遍歷完后,再進行交換位置操作,類似冒泡,但在比較過程中,不進行交換操作,只記錄元素位置。一次遍歷只進行一次交換操作。這個對與交換次序比較費時的元素比較適合。這種排序法比冒泡法要城府要深的多,我先記住極端數據,待遍歷數據完了之后,我再處理,不像冒泡法那樣只要比自己極端一點的就要處理,選擇法只處理本身范圍內的最極端數據.

    public static void xuanze(int[] data) {
       int temp; 
       for (int i = 0; i 〈 data.length; i++) {
          int lowIndex = i; 
          for (int j = data.length - 1; j 〉 i; j--) {
             if (data[j] 〉 data[lowIndex]) {
                lowIndex 
    = j; 
             }
          }
          temp
    =data[i]; 
          data[i]
    =data[lowIndex]; 
          data[lowIndex]
    =temp; 
       }
    }


    Shell排序:
    它是對插入排序的一種改進,是考慮將集合元素按照一定的基數劃分成組去排序,讓每一組在局部范圍內先排成基本有序,最后在進行一次所有元素的插入排序。

    public void sort(int[] data) {
       for(int i=data.length/2; i〉2; i/=2){
          for(int j=0; j〈i; j++){
             insertSort(data,j,i); 
          }
       }
       insertSort(data,
    0,1); 
    }

    private void insertSort(int[] data, int start, int inc) {
       int temp; 
       for(int i=start+inc; i〈data.length; i+=inc){
          for(int j=i; (j〉=inc)&&(data[j]〈data[j-inc]); j-=inc){
             temp
    =data[j]; 
             data[j]
    =data[j-inc]
             data[j
    -inc]=temp; 
          }
       }
    }


    Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1630773

    posted on 2007-06-28 11:06 萬博 閱讀(288) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2007年6月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    導航

    統計

    留言簿(1)

    隨筆檔案(13)

    搜索

    積分與排名

    最新隨筆

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚欧免费无码aⅴ在线观看| 国产精品亚洲精品日韩电影| 国产一区二区三区免费观在线| 国产又粗又长又硬免费视频| 日韩成人精品日本亚洲| 免费看大美女大黄大色| 亚洲hairy多毛pics大全| 拔擦拔擦8x华人免费久久 | 亚洲国产成人久久综合一| 青青操视频在线免费观看| 亚洲国产精品高清久久久| 无码精品一区二区三区免费视频| 亚洲视频免费在线观看| 91在线视频免费看| 亚洲Av永久无码精品一区二区| 免费大学生国产在线观看p| 一级特黄录像免费播放中文版| 亚洲精品乱码久久久久66| 性xxxxx大片免费视频| 激情综合亚洲色婷婷五月APP| 日韩中文字幕在线免费观看| 一区二区三区精品高清视频免费在线播放 | 国产精品亚洲av色欲三区| 精品亚洲视频在线观看| 18禁超污无遮挡无码免费网站 | 亚洲成在人线av| 亚洲免费中文字幕| 亚洲国产精品成人AV在线| 亚洲а∨天堂久久精品| 一级毛片aaaaaa免费看| 亚洲精品动漫免费二区| 亚洲精品无码AV中文字幕电影网站| 中文字幕a∨在线乱码免费看 | 久久久无码精品亚洲日韩京东传媒| 国产又黄又爽又猛免费app| 久久亚洲精品无码gv| 亚洲AV无码乱码国产麻豆穿越| 成人影片麻豆国产影片免费观看| 一区二区三区在线观看免费 | 国产亚洲成归v人片在线观看| 18禁止看的免费污网站|