1. 程式人生 > >資料結構一(資料結構與演算法基本含義)

資料結構一(資料結構與演算法基本含義)

1.1 基礎概念

● 資料元素

      ● 是組成資料的,有一定意義的單位

      ● 在計算機中通常作為整體處理

      ● 也叫做結點或記錄

● 資料元素例子:植物中的楊樹、柳樹

 

● 資料項

    ● 一個數據元素由若干個資料項組成

    ● 是資料不可分割的最小單位

例子:樹的粗細、高度等

 

 ● 資料物件

    ● 是性質相同的資料元素集合

    ● 是資料的子集

例子:電腦都有顯示器、主機、滑鼠等性質相同的資料項

 

1.2 邏輯結構

 ● 邏輯結構

    ● 是指資料物件中資料之間的關係

 

●分類

    ● 集合結構

    ● 線性結構

    ● 樹形結構

    ● 圖形結構

 

● 集合結構

    ● 集合結構中的資料元素除了同一個集合外,沒有其他關係

    ● 元素之間是平等關係

● 線性結構

    ● 是一對一的關係

● 樹形結構

    ●  一對多的關係

● 圖形結構

    ● 多對多的關係

 

1.3 儲存結構

● 儲存結構

    ● 是指資料的邏輯結構在計算機中的儲存形式

●分類

    ● 順序儲存結構

        ● 將資料元素儲存在地址連續的儲存單元裡,其資料間的邏輯關係和物理關係是一致的

    ● 鏈式儲存結構

        ● 將資料元素儲存在任意的儲存單元裡,可連續,也可不連續

 

1.4 抽象資料型別

● 資料型別

    ● 是指一組性質相同的值的集合在此集合上的一些操作總稱

    ● 是按照值的不同進行劃分的

    ● 是用來說明變數或表示式的取值範圍和所能進行的操作

 

● 分類

    ● 原子型別:不能再分的基本型別

    ● 構造型別:有若干原子型別或構造型別組合而成的

 

1.5演算法

● 演算法

    ● 是對解決特定問題的求解步驟的描述

    ● 在計算機表現為指令的有限序列,並且每條指令表示一個或多個操作

 

● 演算法的有窮性 

    ● 指演算法在執行步驟中自動停止,不會出現死迴圈,每個步驟都可以在可接受的時間內完成

● 演算法的確定性

    ● 演算法每一步驟都有確定的含義,不能出現二義性

● 可執行性

    ● 演算法每一步都必須可執行的,可以轉化為計算機程式進行,並得到執行結果

● 正確性

    ● 無歧義,得到正確的答案,應該具有輸入、輸出、加工處理

● 可讀性

    ● 便於閱讀

● 健壯性

    ● 輸入不合法的資料時,演算法也能作出相關處理

● 時間效率高和儲存量低