一.起源及重要性
1968 年,美國的高德納 Donakl E . Kn uth 教授在其所寫的《 計算機程序藝術》第一卷《基本算法 》 中,較系統地闡述了數據的邏輯結構和存儲結構及其操作, 開創了數據結構的課程體系 ,數據結構作為一門獨立的課程,也在計算機科學的學位課程中開始出現。
重要性:
結構程序設計成為程序設計方法學的主要內容,人們越來越重視"數據結構氣認為程序設計的實質是對確定的問題選擇一種好的結構,加上設計 種好的算法。可見,數據結構在程序設計當中占據了重要的地位。
二.基本概念和術語
所謂數據結構,就是數據和結構
下面我們先來介紹數據的相關概念
數據的定義:
描述客觀事物的符號,是計算機中可以操作的對象,是能被計算機識 別,并輸入給計算機處理的符號集合 數據不僅僅包括整型、實型等數值類型,還包括字符及聲音、圖像、視頻等非數值類型。
所謂計算機數據,就是符號,有以下兩個要求:
1.可以輸入到計算機中
2.能被計算機程序處理
數據元素 :
是組成數據的、有一 定意義的基本單位,在計 算 機中通常作為整 體處理,也被稱為記錄。
數據項:
一個數據元素可以自若干個數據項組成。例如:人是一個數據元素,那么人的身高,體重等都是數據項。
數據項是數據不可分割的最小單位 。在數據結構這門課程中,我們把數據項定義為最小單位,是有助于我們更好地解決問題。所以,記住了,數據項是數據的最小單位。但真正討論問題時,數據元素才是數據結構中建立數據模型的著眼點。就像我們 討論一 部電影時,是討論這部電影角色這樣的"數據元素",而不是針對這個角色的姓名或者年齡這樣的"數據項"去研究分析。
接下來我們再分析結構這個概念:
結構,簡單理解就是關系的意思,結構是指各個組成部分相互搭配和排列的方式,在現實世界中,不同數據元素之不是獨立的,而是存在特定的關系,我們將這些關系稱為結構,那數據結構是什么?
數據結梅:是相互之間存在-種或多種特定關系的數據元素的集舍。
在計算機中,數據元素并不是孤立、雜亂無序的,而是具有內在聯系的數據集合。數據元素之間存在的一種或多種特定關系,也就是數據的組織形式 , 而數據結構就是分析待處理對象的特性及各處理對象之間存在關系
三.數據結構的結構分類
3.1.邏輯結構
邏輯結構:是指數據對象中數據元素之間的相互關系
主要分為以下四類:
1.集合結構
定義:
集合結構中的數據元素 除 同屬于一 個集合外,它們之間 沒有其他關系。 各個數據元素是"平等'的,它們的共同屬性是"同屬于一個集合"。數據結構中 的集合關系就類似數學中的集合。

2.線性結構
定義:線性結構之間元素是一一對應的。

3.樹形結構
定義: 樹形結構中的數據元素之間存在一對多的層次關系

4.圖形結構
定義: 圖形結構的數據元素是多對多的關系

示意圖表示數據的邏輯結構時,要注意兩點:
將每一個數據元素看做一 ,用圈圈表 示。
元素之闖的邏輯關系用結點之間的連線表示.如果這個關系是有方向的,那么用帶箭頭的連續表 示
3.2.物理結構
又叫存儲結構
定義:物理結構是指數據的邏輯結構在計算機中的存儲形式
數據元素的存儲結構形式有兩種:順序存儲和鏈式存儲。
1.順序存儲結構
定義:把數據元素存放在地址連續的存儲單元里,其數據間的邏輯關系和物理關系是一致的
2.鏈式存儲結構
定義:鏈式存儲結構是把數據元素存放在任意的存儲單元里,這組存儲單元可以是連 續的,也可以是不連續的 數據元素的存儲關系并不能反映其邏輯關系,因此需要用一個指針存放數據元素的地址,這樣通過地址就可以找到相關聯數據元素的位置。

3.3邏輯結構與物理結構對比
邏輯結構是針對具體問題的,是為了解決某個問題, 在對問題理解的基礎上,選擇一個合適的數據結構表示數據元素之間的邏輯關系。
邏輯結構是面向問題的,而物理結構就是面向計算機的,其基本的目標就是將數 據及其邏輯關系 儲到計算機的內存中
數據的存儲結構應正確反映數據元素之間的邏輯關系,這才是最為關鍵的,如何儲數據元素之間的邏輯關系,是實現物理結構的重點和難點。
最后,本文借鑒了《大話數據結構》這本書,里面的內容對于小白理解數據結構概念性的東西非常好,希望大家可以自行閱讀,加深對數據結構理解。