排序是指將資料元素重新排列成乙個按關鍵字有序的乙個過程。通俗的來說就是給一堆資料進行編號,編號的規則則是由關鍵字來決定。
排序完全在記憶體中進行的就叫做內部排序,借助外存的叫做外部排序。
相通的資料元素在不同排序過程中發生位置改變的叫做不穩定排序,反之就是穩定排序。
①直接插入排序
這種方法最簡單,就是依次將記錄序列中的每乙個記錄插入到有序的序段中。過程就是先把第乙個記錄放到這個序段中,然後拿出第二個記錄與它之前的記錄進行從後向前的比較,如果該記錄小與之前的記錄,則將之前的記錄後移一位,直到找到比該記錄小或者相等的記錄,因為這個過程是先比較後移動,所以後面總是有乙個空位讓你放進去該記錄,依次類推。
時間複雜度為 o(n²),是一種穩定排序。
②希爾排序
先把待排序的記錄劃分為若干子串行分別進行直接插入排序,當記錄的排列已經基本有序時,最後再對所有記錄進行一次直接插入排序。具體實現就是先取乙個d1是一種不穩定排序,時間複雜度有點麻煩,因為與序列增量有關。
③氣泡排序
對所有相鄰記錄的關鍵字比較,如果逆序,交換即可。具體就是用當前記錄的關鍵字從前向後依次比較,直到找到比它大的資料元素項,然後放在這個資料元素項之前即可。
時間複雜度為 o(n²),是一種穩定排序。
④快速排序
把記錄分割成兩部分,其中一部分記錄的關鍵字均小於另一部分,之後分別在他們那部分進行排序,依次類推,直到每個分割槽都只有乙個記錄。
時間複雜度與實際情況有關,是不穩定排序。
⑤直接選擇排序
在每一趟比較中選取關鍵字最小的記錄作為該次比較的結果。具有方法就是從無序區(也就是待排序的那些資料元素)選擇關鍵字值最小的記錄,將它與無序區的第乙個記錄交換位置,直到無序區為空。
時間複雜度為 o(n²),是一種不穩定排序。
資料結構 排序的基本概念
目錄 排序的基本概念 1 排序 2 排序的穩定性 3 內部排序外部排序 內部排序以及分類 外部排序 待排序記錄的儲存方法 排序演算法的評價標準 對關鍵字的非遞減或非遞減的順序對一組記錄重新進行排序的操作。當排序記錄中的關鍵字都不相同時,則任何乙個記錄的無序序列經排序後得到的結果唯一,反之,當待排序的...
資料結構基本概念
是指相互之間具有 存在 一定聯絡 關係 的資料元素的集合。元素之間的相互聯絡 關係 稱為邏輯結構。資料元素之間的邏輯結構。元素之間的邏輯結構有四種基本型別 集合 結構中的資料元素除了 同屬於乙個集合 外,沒有其它關係。線性結構 結構中的資料元素之間存在一對一的關係。樹型結構 結構中的資料元素之間存在...
資料結構基本概念
資料結構基本概念 1 資料結構的研究物件 資料結構是一門討論 描述現實世界實體的數學模型 非數值計算 及其上的操作在計算機中如何表示和實現 的科學。資料結構的內容包括三個 層次 的五個 要素 層次 要素 資料表示 資料處理 抽象邏輯結構 基本運算 實現儲存結構 演算法評價 不同資料結構的比較計算法的...