1氣泡排序
最簡單的一種排序演算法。假設長度為n的陣列arr,要按照從小到大排序。則氣泡排序的具體過程可以描述為:首先從陣列的第乙個元素開始到陣列最後乙個元素為止,對陣列中相鄰的兩個元素進行比較,如果位於陣列左端的元素大於陣列右端的元素,則交換這兩個元素在陣列中的位置,此時陣列最右端的元素即為該陣列中所有元素的最大值。接著對該陣列剩下的n-1個元素進行氣泡排序,直到整個陣列有序排列。演算法的時間複雜度為o(n^2)。
function bublesort(nums)}}
return nums;
}
2選擇排序
選擇排序(selection sort)是一種簡單直觀的排序演算法。它的工作原理是每一次從待排序的資料元素中選出最小(或最大)的乙個元素,存放待排序序列的起始位置(或末尾位置),直到全部待排序的資料元素排完。
function selectsort(arr)
let temp=arr[i]
arr[i]=arr[minindex]
arr[minindex]=temp
}return arr;
}
常見的排序演算法
一 氣泡排序 include include void swap int a,int b void bubblesort int arr,int size int main void bubblesort a,5 for int i 0 i 5 i cout 二 選擇排序 void selectio...
常見的排序演算法
需要包含的標頭檔案 include stdafx.h include include include 氣泡排序是穩定排序 時間複雜度 o n 2 void swap int a,int b void bubblesort int a,int n void printnum int a,int n a...
常見的排序演算法
排序演算法是最基礎,也是最簡單的演算法思想,因為應用場景多,書寫簡單,所以應用較為普遍,所以在面試和考試的時候,都會涉及到排序演算法,雖然排序演算法種類很多,但是只要理解了思想,然後靈活運用,那麼就不難記憶.排序演算法兩個需要記憶和理解的點就是 演算法思想和時間複雜度.下面我們就介紹和分析一下常見的...