資料結構與演算法概述
阿新 • • 發佈:2018-12-22
文章目錄
#資料型別
程式語言中的資料型別是指具有預定義值得一個數據集合,常見的資料型別有:整數型,浮點型,字串,字元等。一般有兩種資料型別:
- 系統定義的資料型別(基本資料型別);
- 使用者自定義的資料型別(使用者自定義的類,可以將系統定義的資料型別進行組合封裝成使用者需要的資料型別)。
class Student{
public String name;
public int age;
public double grade;
}
資料結構
資料結構就是計算機中儲存和組織資料的一種特定的方式,它是的資料處理更加高效。一個數據結構就是一種儲存和組織資料的特定方式,常用的資料結構有:陣列,檔案,連結串列,棧,佇列,樹和圖等。依據元素的組織方式,資料結構分為兩大類:
- 線性資料結構:可以按線性次數訪問元素,但並不是強制所有元素連續儲存(陣列、連結串列、棧、佇列)。
- 非線性資料結構:元素是以非線性次序來訪問和儲存的(樹和圖)
將資料結構和相關的運算組合起來,成為抽象資料結構(ADT)。
演算法
演算法就是用一條接一條的指令來解決給定的問題。解決問題的方式有很多種,根據時間和空間兩方面確定一種較為高效的演算法,這就是演算法分析。
增長率:隨著輸入規模的增加,演算法執行時間增加的速度,是輸入規模的函式。
演算法分析有三種類型:最壞情況、最好情況和平均情況,大O表示法給出了最壞情況,嚴格上限。Ω表示法給出了最好情況,嚴格下限