鍊錶有什麼用,c語言鍊錶的用途是什麼

時間 2022-12-01 04:50:55

1樓:鬼火妖

鍊錶是動態的進行儲存分配的一種結構。

我們知道,用陣列存放資料時,必須事先定義固定的長度(即元素個數)。如果事先難以確定元素個數,則必須把陣列定義的足夠大,以便存放,顯然這樣會浪費記憶體。

而鍊錶可根據需要開闢記憶體單元,不會浪費記憶體。

鍊錶有乙個「頭指標」變數,它存放乙個位址,該位址指向乙個元素,這個元素又指向下乙個元素......直到最後乙個元素,該元素不再指向其他元素,稱為「表尾」,鍊錶到此結束。

2樓:匿名使用者

我從另乙個角度來解釋吧.

相對於陣列來說:

優點: 通過索引(陣列下標)可以很快地訪問陣列元素;

缺點: 插入/刪除元素需要對陣列進行調整, 效率低;

而鍊錶:

優點:插入/刪除速度很快,而且不用對整個鍊錶進行調整;

缺點:只能進行順序訪問,不能隨機訪問(像陣列一樣用下標);

所以,鍊錶在一些需要快速插入/刪除,而不太關心或者不需要隨機訪問的情況下使用.

3樓:匿名使用者

簡單講,鍊錶是在一定程度上代替陣列處理資料,陣列在於確定資料個數的情況下採用,鍊錶則適用於無法確定資料個數的情況。

至於效率,如果不是特別要求,可不予考慮

4樓:秒懂百科

鍊錶:一種計算機資料結構

c語言鍊錶的用途是什麼

5樓:匿名使用者

1、鍊錶是一種物理儲存單元上非連續、非順序的儲存結構,資料元素的邏輯順序是通過鍊錶中的指標鏈結次序實現的。鍊錶由一系列結點(鍊錶中每乙個元素稱為結點)組成,結點可以在執行時動態生成。每個結點包括兩個部分:

乙個是儲存資料元素的資料域,另乙個是儲存下乙個結點位址的指標域。 相比於線性表順序結構,鍊錶比較方便插入和刪除操作。

2、例程:

/**對鍊錶的綜合操作

*功能有建立,排序,插入,刪除,輸出

*/#include

#include

typedef int elemtype;

typedef struct nodetypenodetype,*linktype;

linktype create()

p2->next=null;

free(p1);

return(head);

}void output(linktype head)}linktype sort(linktype head)ph=ph->next;

}p1=p1->next;

}return(head);

}linktype del(linktype head)if(ph==null)//沒有找到要刪除的結點else

else//刪除其它結點

}free(ph);

return(head);

}linktype insert(linktype head)if(head->next->data > insert->data)//插入頭部

else//插入到其它地方

return(head);

}void main()

6樓:匿名使用者

用來儲存邏輯位址連序而實體地址不一定連序的資料儲存結構

7樓:匿名使用者

鍊錶是一種常見的重要的資料結構。它是動態地進行儲存分配的一種結構。它可以根據需要開闢記憶體單元。

鍊錶有乙個「頭指標」變數,以head表示,它存放乙個位址。該位址指向乙個元素。鍊錶中每乙個元素稱為「結點」,每個結點都應包括兩個部分:

一為使用者需要用的實際資料,二為下乙個結點的位址。因此,head指向第乙個元素:第乙個元素又指向第二個元素;……,直到最後乙個元素,該元素不再指向其它元素,它稱為「表尾」,它的位址部分放乙個「null」(表示「空位址」),鍊錶到此結束。

8樓:幸巴達

是一種儲存資料的結構方式

9樓:匿名使用者

可以作為臨時儲存容器

j**a中煉表有什麼用

c++的鍊錶有什麼作用?

10樓:匿名使用者

資料的一種儲存方式,一般是用兩個指標儲存乙個資料和下乙個鍊錶結構的指標,這樣只要記憶體夠大就可以儲存無限條資料,還有就是隨機插入和移除速度較快。不過隨機訪問很慢,結構佔記憶體大。反正我不喜歡這個資料結構。

c語言結構體煉表有什麼用

11樓:匿名使用者

當你學了資料結構就明白它的作用了,它是資料結構的基礎知識,比如鍊錶、樹、圖等資料結構都要用到它。

12樓:匿名使用者

將某一型別的資料鏈結在一起,不同於陣列的是不用限定邊界.記憶體可以隨機分配,也可以是順序分配。

13樓:匿名使用者

//你學過指標嗎? 你就知道指標是可以儲存乙個位址,你想一下,如果給每個指標 malloc 的話,第乙個*next中儲存第二個的位址,第二個的*next 儲存第三個位址,這樣一直下去

typedef struct node

link;

link * insert()

void insert(link *q)

void main()

其實 資料結構沒有什麼,只要多多練習就可以啦,只要把別人 玩遊戲的時間,追女孩子的時間,看電影的時間,全部花在程式設計上,會找到程式設計的快樂,祝你成功啊·

只要多多練習,從中找到他們的錯誤,你就成長了·

14樓:秒懂百科

鍊錶:一種計算機資料結構

c++裡 鍊錶是個什麼玩意 書上的看不懂啊 可以用鍊錶幹什麼啊 求救

15樓:匿名使用者

c語言中的鍊錶部分是很重要的內容,是必須掌握的。在以後的工作中,會涉及到資訊管理、員工管理等方面的內容,這些都需要用鍊錶來解決,如果一時不能理解,可以通過畫圖來幫助理解,尤其在排序方面,畫圖輔助理解更不可少。

16樓:匿名使用者

重要的兩個概念。乙個是自己的資料成員,和指向下乙個的指標,下乙個和這個有相同的資料

c語言指標定義,有什麼用,作用有

指標是c語言中廣泛使用的一種資料型別。運用指標程式設計是c語言最主要的風格之一。利用指標變數可以表示各種資料結構 能很方便地使用陣列和字串 並能象組合語言一樣處理記憶體位址,從而編出精練而高效的程式。指標極大地豐富了c語言的功能。學習指標是學習c語言中最重要的一環,能否正確理解和使用指標是是否掌握c...

C語言裡的 號是做什麼用的

屬於條件運算子 語法 e1?e2 e3 若e1為真 非0 則此表示式值為e2的值 若為假,則表示式的值為e3 相當於if e1 e2 else e3 例如 y x 0?x x 即x 0時y x 否則y x 其實就是求絕對值。判斷前面的布林值是真還是假,真執行 前面的 否則執行 後面的 例如int m...

C語言中,佇列是什麼意思,有什麼用途

佇列是一種特殊的線性表,它只允許在表的前端 front 進行刪除操作,而在表的後端 rear 進行插入操作。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。佇列中沒有元素時,稱為空佇列。在佇列這種資料結構中,最先插入在元素將是最先被刪除 反之最後插入的元素將最後被刪除,因此佇列又稱為 先進先出 ...

C中的get和set有什麼用

get set為獲取或者設定類中的屬性 比如 private int count public int count get 可以在屬性中做驗證或者通過屬性對某個屬性進行保護 這裡在屬性宣告中要用到的 如 class classa public int a set 在類classa裡面有乙個私有的變數...

東方project遊戲中的c鍵有什麼用

基本按鍵如下 小鍵盤上下左右對應各移動方向也就是 對應人物的上下左右z射擊,確定x取消,使用符卡 有結界時則為釋放結界 就是必殺啦,shift進入低速移動擦彈模式,這個是要按住的,按住後人物的移動速度會減慢,容易進行精密操作。系列簡介東方project的基礎是日本同人遊戲社團上海愛麗絲幻樂團所製作的...