冒泡 選擇 插入三種排序

2021-06-20 00:06:03 字數 1939 閱讀 6776

工作閒下來了,偶來學習下排序演算法的思想,適當的緩解下壓力,換個思考方式也很不錯的。

氣泡排序:是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢「浮」到數列的頂端。

實現:public class ubblesort ;

for(int i=0;i<=b.length-1;i++)

}

//方法二:小數上浮

for(int j=1;j<(b.length-i);j++)

}

}

for(int i=0;i

system.out.println(b[i]);

}

}

選擇排序:是一種簡單直觀的排序演算法。它的工作原理如下。首先在未排序序列中找到最小元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小元素,然後放到排序序列末尾。以此類推,直到所有元素均排序完畢

實現:public class electsort ;

for(int i=0;i

for(int j=i;j

if(b[i]

int temp=b[i];

b[i]=b[j];

b[j]=temp;

}

}

}

for(int i=0;i

system.out.println(b[i]); }

}

插入排序 :是一種簡單直觀的排序演算法。 它的工作原理是通過構建有序序列,對於未排序資料,在已排序序列中從後向前掃瞄,找到相應位置並插入。

實現  :

/***

* @date 2013-12-31 上午10:58:46

* 工作原理:在已排序好的陣列中b,對於待定排序的元素a,將有序陣列b從後向前掃瞄,找到a元素即將插入的位置

* 1.第乙個元素是已經拍好的元素陣列

* 2.找到下乙個新的待定元素,將已排序好的元素從後向前掃瞄,將待定元素插入已排序的元素中

* 3.重複遇以上的步驟

*/public class nsertsort ;

for(int i=1;i

int temp=b[i];

for(int j=i;j>0;j-- )

}

}

for(int i=0;i

system.out.println(b[i]);

}

}

}   

大家 互相交流。。。。。。

冒泡 插入 選擇 三種排序

一 氣泡排序 演算法思路 兩兩比較相鄰記錄之間關鍵字,如果反序則交換,直到沒有反序的記錄為止。具體 import random data n int raw input for re in range 0,n a random.randint 1,1000 data re a print data ...

三種簡單排序 冒泡 選擇 插入

include using namespace std 簡單排序 平均時間複雜度都是o n方 級別。包括 氣泡排序 插入排序 選擇排序 說明 實現的演算法都是公升序排序。void swap int e1,int e2 氣泡排序 穩定 重複地走訪過要排序的元素列,一次比較兩個相鄰的元素,如果他們的順序...

三種常用排序演算法(冒泡 選擇 插入)

演算法描述 從陣列的首端 尾端 開始,將相鄰兩數進行比較,將最大 最小 的數放置到尾端 首端 如此迴圈,並在下次迴圈時剔除上次尾端 首端 已放置好的數,直至排出正確序列。下面展示一些c 實現。演算法描述 從第二個數開始往右迴圈,每次迴圈中將當前數分別與其左邊的數進行比較,如發現比當前數大的數則進行交...