常用的資料結構和演算法

2021-09-01 12:23:47 字數 637 閱讀 7047

一,排序演算法

1.氣泡排序;

2.選擇排序;

3.插入排序:對於未排序的資料,在已排序列中從後向前找相應的位置插入;

4.二分插入排序:插入排序的優化,通過二分法減少遍歷時間;

5.希爾排序:先將要排序的序列分為若干子串行,在序列內分別直接插入排序,待整個分列基本有序時,在對全體

記錄進行直接插入排序(較不穩定);

6.堆排序;

7.快速排序:以乙個元素作為「基準」左右移動其他的;

二,搜尋演算法

1.順序搜素/線性搜尋;

2.二分搜尋/查詢;

一,線性表(將儲存方式分為順序表和煉表)

1,線性表的基本運算時堆線性表的操作,常見包括:求長度,置空表,遍歷,查詢,修改,刪除,插入,排序等。

2.順序表對應陣列

特點:元素按邏輯順序儲存在一塊連續的儲存空間中,是一種隨機訪問結構。

二,棧 佇列和串

1.棧:是限定在尾部進行插入和操作的線性表(後進先出);

2.佇列:受限的有序列表。只允許一端插入,隊尾入為入隊,隊頭處為出隊。

基本運算:出隊,入隊,取對頭,置空隊;

3.串:由字元構成的有序數列;

基本運算:賦值,串連線,求長度,插入,修復,刪除,比較串大小。

資料結構和常用演算法

人們進行程式設計時通常關注兩個重要問題,一是如何將待處理的資料儲存到計算機記憶體中,即資料表示 二是設計演算法操作這些資料,即資料處理。資料表示的本質是資料結構設計,資料處理的本質是演算法設計。pascal之父,瑞士著名計算機科學家沃思 niklaus wirth 教授曾提出 演算法 資料結構 程式...

常用資料結構和排序演算法

在程式設計中,為了處理方便,把具有相同型別的若干 變數按有序的形式組織起來。這些按序排列的同類資料元素的集合稱為 陣列。在c語言中,陣列屬於構造資料型別。乙個陣列可以分解為多個陣列元素,這些陣列元素可以是基本資料型別或是構造型別。因此按陣列元素的型別不同,陣列又可分為數值陣列 字元陣列 指標陣列 結...

資料結構常用演算法

將一整數序列中的所有負數轉移到所有正數之前 using system using system.collections.generic using system.linq using system.text namespace csharptest low while low high a low ...