1. 程式人生 > >C語言(數據結構)——概述

C語言(數據結構)——概述

列存儲 數據結構 找到 屬於 附加 一個 所有結點 描述 有關

1、為什麽要學數據結構

——有用

2、什麽是數據結構

——(1)存在一種或多種個關系的【數據元素】的集合和操作

——(2)指的是一種關系和實現

——(3)主要研究數據的【邏輯結構】和【存儲結構】,具體是研究數據 【結點的值】 與 【結點的關系】

    進一步解析:即使研究值與值關系,在邏輯上和計算機內存存儲上的探討

3、邏輯結構是指什麽?有哪些基本的結構

——(1)邏輯結構是從【具體問題】抽象出來的【數學模型】,描述的是數據元素之間的【邏輯關系和操作】,與數據的存儲無關

——(2)基本結構有:

  【集合結構】——沒有關系,同屬於一個集合

  【線性結構】——除了第一個節點外,其他節點都有唯一一個直接前驅(節點),除最後一個外,各節點都有唯一的後繼(節點)

        技術分享圖片

  【樹型結構】除根結點外,各結點都有唯一前驅,所有結點有多個後繼(不同結點可能有相同父結點)【1對多】

        技術分享圖片

  【圖狀或網狀結構】同一個結點可能有多個前驅和多個後繼,【多對多】

      技術分享圖片

4、存儲結構是指什麽?有哪些基本的結構

——(1)存儲結構是指:有了數據結構(模型),咱們如何在計算機內存中實現,這種實現,我們稱之為【存儲結構】

——(2)基本的存儲數據結構有:

    【順序方法存儲】邏輯上相鄰的結點放在物理上相鄰的存儲單元中

    【鏈式存儲】在此方式中:由兩部分組成,一部分是存儲節點本身的值,稱為【數據域】

                另一部分存儲後繼結點的地址,稱為【指針域】

                結點之間,在內存開辟地址間,不存在必須連續的關系

    【索引存儲】附加的索引表,通過存儲序號索引值找到對應的值

    【散列存儲】利用結點的值,確定存儲單元的地址

C語言(數據結構)——概述