目錄算法
- 什麼是數據結構?
- 常見的數據結構有哪些?
- 數據結構的邏輯結構分類有哪些?
- 數據的存儲結構有哪幾種?
通常來講,用計算機解決一個具體問題時,大體須要以下幾步:數組
其中尋找數學模型的實質就是分析問題,從中提取操做的對象,並找出這些操做對象之間含有的關係,而後用數學語言加以描述。面對一些簡單的場景也許只須要一個數學方程就能解決,可是面對一些複雜的場景,如須要統計圖書館書目信息、借還信息等這些非數值計算問題的數學模型,就再也不是一個簡單的數學方程了,而是像表、樹和圖之類的數據結構。
所以,簡單來講,數據結構是一門研究非數值計算的程序設計問題中計算機的操做對象(這稱之爲數據),而且這些數據之間有着某種關係(這種關係就是結構)。數據結構
邏輯結構圖形表示,以下: 學習
數據在計算機中的表示(或稱映像)稱爲物理結構,又稱爲存儲結構。在計算機中表示數據的最小單位是一個二進制位,叫作位(bit)。在計算機中,咱們能夠用一個由若干位組合起來造成一個位串來表示一個數據元素(如用32位即4個字節表示一個整數元素,8位即1個字節表示一個字符)。
數據元素之間的關係在計算機中有兩種不一樣的表示方式:順序映像和非順序映像,並由此得出兩種不一樣的存儲結構:順序存儲結構和非順序存儲結構。順序存儲是在連續存儲空間內,元素之間藉助元素在存儲器中的相對位置來表示數據元素之間的邏輯關係(如圖4-1,一個整型數組的兩個元素11和12在內存中的位置是連續的,0010存儲的是11,0014存儲的是12)。而非順序存儲是藉助指向元素地址的指針來表示元素之間的關係(如圖4-2,一個鏈表裏的兩個元素a以及元素b,在1110存儲的是元素a,a後面存儲的是指向下一個元素b的地址的指針)。測試
數據結構是咱們研究問題的基礎數據模型,既包含了問題對象的結構也包含了問題對象之間的關係。清楚的知道咱們經常使用的數據結構,能爲咱們往後思考以及解決程序問題打下堅實的理論基礎。設計
本文爲原創內容,供學習參考以及總結概括使用,若文章中有引用到涉及版權相關的圖片,請告知!
勘誤,請留言!指針