經典的排序演算法,此文章介紹三個
氣泡排序:它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。
public
void
bubblesort(int a)}}
while(iswrap);
for(int i=0;ireturn;
}
插入排序:插入演算法把要排序的陣列分成兩部分:第一部分包含了這個陣列的所有元素,但將最後乙個元素除外(讓陣列多乙個空間才有插入的位置),而第二部分就只包含這乙個元素(即待插入元素)。在第一部分排序完成後,再將這個最後元素插入到已排好序的第一部分中
public
void
insertsort(int a)}}
for(int i=0;ireturn;
}
選擇排序:每一次從待排序的資料元素中選出最小(或最大)的乙個元素,存放在序列的起始位置,直到全部待排序的資料元素排完。 選擇排序是不穩定的排序方法(比如序列[5, 5, 3]第一次就將第乙個[5]與[3]交換,導致第乙個5挪動到第二個5後面)。
public
void
selectsort(int a)
}if(mixinteger!=i)//如果最小的元素下標不為原來的值則交換元素
}for(int i=0;ireturn;
}
執行主函式::
public
class
solution
; al.insertsort(a);
al.bubblesort(a);
al.selectsort(a);
}}
冒泡 插入 選擇 快速排序
各位親 有時間可以去看看我的 金駿家居 店 買時說明在我的部落格看到有優惠哦 還有意外禮品贈送 真正的程式設計師 店 氣泡排序 每次找出最大或者最小的數放到序列的最後。插入排序 每一次查詢都把數放到已排序序列合適的位置。例子 4,3,2,1如數中的第乙個數肯定是有序的,從第二個數開始3小於4,放在已...
演算法 插入選擇氣泡排序
演算法 排序 n 2 時間複雜度是o n 2 的排序有插入,選擇,冒泡。由於演算法思想比較簡單易懂,也不複雜。我們就簡單講講。插入排序 乙個元素是有序的,從第二個元素開始,依次將每個元素插入到前面序列的對應位置,最終整個序列有序。外層n 1趟。void insertsort int a,int n ...
排序 快速,插入,選擇,冒泡
快速排序 陣列快速排序 先取出陣列第乙個 把每個和它比較,比它小的放在l陣列,大的放r陣列,一直比較,最後合到乙個陣列 function kuaisu a l r array for i 1 i c i else l kuaisu l r kuaisu r return array merge l,...