新手資料結構入門理解必看!!!!!!

2021-10-25 10:34:17 字數 1273 閱讀 9327

是一門研究資料之間關係的一門學科,主要有兩類需要研究的關係:

物理關係:資料在記憶體中的實際關係。

順序結構:根據資料之間的相對位置確定關係。

鏈式結構:在資料中新增乙個指標域,用於指向跟它有關係的資料。

邏輯關係:無視物理關係,人為新增一種關係。

集合:資料之間同屬於乙個集體,除此之外沒有任務關係。

表:資料之間存在一對一關係,如:陣列(順序表),鍊錶(鏈式表)。

樹:資料之間存在一對多關係。

圖:資料之間存在多對多關係。

我們常用說的資料結構指的是邏輯關係,而資料結構在記憶體的儲存方式,指的是物理關係。

每種邏輯結構採用什麼的物理結構儲存並沒有明確規定,通常以**實現的難度、以及對時間、空間複雜度的要求,選擇最合適的物理結構儲存,也有可能是鏈式和順序混合儲存。

廣義:解決特定問題的方法。

狹義:資料結構的運算。

1、物理結構

2、邏輯結構

3、結構的運算

建立資料結構:create

銷毀資料結構:destroy

清除所有元素:clear

遍歷資料結構:show、print

從資料結構中刪除乙個元素:delete

把乙個元素插入到資料結構:install

修改資料結構中的某個元素:modify

查詢資料結構的中元素:query、find

訪問其中乙個元素:access

棧:把錶結構限制為只有乙個埠進出,元素先進後出filo。

而棧記憶體正是使用了這種結構管理記憶體,所以才叫棧記憶體。

bool is_pop(int* in,int* out,size_t len)

佇列:把乙個表結構限制成有兩個埠,乙個埠只能進,另乙個埠只能出,先進先出fifo。

隊頭 0

隊尾 0

隊空 隊頭==隊尾

隊滿 隊頭==(隊尾+1)%cal;

出隊 front = (front+1)%cal;

入隊 rear = (rear+1)%cal;

隊頭元素 ptr[front]

隊尾元素 (cal+rear-1)%cal

元素:由資料域,指標域組成,元素之間使用指標域連線,這種叫鏈式儲存結構。

如果元素中只有乙個指標域,且指向下乙個元素,這樣元素之間就只存在一對一關係,這種結構叫鏈式表。

新手入門關於C 中資料結構的理解

來上海已經一段時間,感慨頗多,經歷幾輪的面試慢慢的發現,語言這方面不能以會用為標準,要懂,深入了解。路漫漫其修遠兮,吾將上下而求索。資料結構在不同的使用者中有著不同理解,但一千個人眼中的哈姆雷特還是那個哈姆雷特。資料結構 同一類資料元素中,各個元素之間的關係,包括三個成分,數資料的儲存結據的邏輯結構...

linux新手入門必看

為什麼要學習linux?為什麼學linux,每個人都有自己的理由 linux是免費的不用花一分錢,能夠節約大筆的成本 linux是開源的,你可以根據自已的需要修改源 linux是開放的,有廣泛的社群,關於linux的討論要遠遠高於windows作業系統 學習linux可以更好的掌握計算機技術 lin...

資料結構 新手入門 線性表(1)

一 順序表 線性表的順序表示,指的是用一組位址連續的儲存單元依次儲存線性表的資料元素。儲存位址 資料元素b1 b l2 b i 1 l ib i l i 1 p i 1 p i l第n個元素所對應位址p n p n p 1 n 1 l下面,如何構建乙個順序表?1 定義乙個結構體 typedef st...