數據結構學習筆記

數據結構學習筆記之①——基礎概念


基本概念

數據:描述客觀事物的符號,是計算機中可以操作的對象,是能被計算機識別,並輸入給計算機處理的符號的集合。(除了常見的數值類型,還包括字符、聲音、圖像等非數值類型。

數據元素:組成數據的、有一定意義的基本單位,在計算機中通常作爲整體處理。也被成爲記錄。(例如:人類作爲數據,數據元素則是人。

數據項:一個數據元素可以由若干個數據項組成。數據項是數據不可分割的最小單位。(在真正討論問題時,一般不作爲建立數據模型的着眼點。

數據對象:性質相同的數據元素的集合,是數據的子集。

數據結構:是相互之間存在一種或多種特定關係的數據元素的集合。(簡單來說就是數據元素+數據元素之間的關係


數據結構

按照視點的不同,數據結構可分爲邏輯結構物理結構

邏輯結構:是指數據對象中數據元素之間的相互關係。

  • 集合結構
    集合結構中的數據元素除了同屬於一個集合外,它們之間沒有其他關係。
    這裏寫圖片描述

  • 線性結構
    線性結構中的數據元素之間是一對一的關係。
    這裏寫圖片描述

  • 樹形結構
    樹形結構中的數據元素之間存在一種一對多的層次關係。
    這裏寫圖片描述

  • 圖形結構
    圖形結構的數據元素是多對多的關係。
    這裏寫圖片描述

物理結構:是指數據的邏輯結構在計算機中的存儲方式。

  • 順序存儲結構
    是把數據元素存放在地址連續的存儲單元裏,其數據間的邏輯關係和物理關係是一致的。
    這裏寫圖片描述

  • 鏈式存儲結構
    是把數據元素存放在任意的存儲單元裏,這組存儲單元可以是連續的也可以是不連續的。
    這裏寫圖片描述


抽象數據類型

數據類型:是指一組性質相同的值的集合及定義在此集合上的一些操作的總稱。
可分爲兩類:

  • 原子類型
    是不可再分的基本類型,包括整型、實型、字符型等。
  • 鏈式存儲結構
    由若干個類型組合而成,是可以再分解的。例如:整型數組是由若干整型數據組成的。

抽象數據類型:是指一個數學模型及定義在該模型上的一組操作。

  • 描述抽象數據類型的標準格式:
    這裏寫圖片描述

算法

定義:算法是解決特定問題求解步驟的描述,在計算機中表現爲指令的有限序列,並且每條指令表示一個或多個操作。

特性:

  • 輸入輸出:
    0個或多個輸入,1個或多個輸出。
  • 有窮性:
    指算法在執行有限的步驟之後,自動結束而不會出現無限循環,並且每一個步驟在可接受的時間內完成。
  • 確定性:
    算法的每一步驟都具有確定的含義,不會出現二義性。
  • 可行性:
    算法的每一步都必須是可行的,也就是說,每一步都能通過執行有限次數完成。

今天開始正式投入數據結構的學習。如發表內容有不當之處,煩請大家多多指教。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章