// 氣泡排序
- (nsmutablearray *)arrayordermethod:(nsmutablearray *)array}}
return array;
}// 快速排序
-(void)quicksortwitharray:(nsmutablearray *)adata left:(nsinteger)left right:(nsinteger)right
[self swapwithdata:adata index1:i index2:j];
}[self swapwithdata:adata index1:left index2:j];
[self quicksortwitharray:adata left:left right:j-1];
[self quicksortwitharray:adata left:j+1 right:right];}}
// 選擇排序
-(void)selectsort:(nsmutablearray *)list
}if(k != i)}}
// 插入排序
-(void)insertsort:(nsmutablearray *)list
[list replaceobjectatindex:j withobject:[nsnumber numberwithint:temp]];
//list[j] = temp;}}
// 交換方法:陣列名,兩個交換位置
-(void)swapwithdata:(nsmutablearray *)adata index1:(nsinteger)index1 index2:(nsinteger)index2
常見的四種排序演算法
void bubblesort int a,int size,int order order為1代表公升序,氣泡排序演算法 void selectsort int a,int size,int order order為1代表公升序,選擇排序演算法 if k i void insertsort int...
四種面試常見排序演算法
特點 效率低,實現簡單 原理 比較兩個相鄰的元素,將值大的元素交換至右端。public static void bubblesort int array 特點 效率低,容易實現。思想 每一趟從待排序序列選擇乙個最小的元素放到已排好序序列的末尾,剩下的為待排序序列,重複上述步驟直到完成排序。publi...
排序演算法(四種)
氣泡排序是非常容易理解和實現,以從小到大排序舉例 設陣列長度為n。氣泡排序從前往後遍歷和從後往前遍歷一樣的原理。目標陣列 3,5,2,6,4,9,7,12,11 從前往後 第一波 從第乙個數開始,如果第乙個數大於第二個數,就把這兩個數調換位置,否則保留之前的排列,第二次把第二個和第三個數比較,比較方...