1.頭指標和頭結點的異同
頭指標:頭指標是指鍊錶指向第乙個結點的指標,若煉表有頭結點,則是指向頭結點的指標; 頭指標具有標示作用,所以常以頭指標冠以鍊錶的名字; 無論鍊錶是否為空,頭指標均不為空。頭指標是鍊錶的必要元素。
頭結點:頭結點是為了操作的統一和方便而設立的,放在第一元素的結點之前,其資料域一般無意義(也可存放鍊錶的長度);有了頭結點,對在第一元素結點前插入結點和刪除第一結點,其操作與其他結點的操作就統一了,頭結點一般不是鍊錶的必要要素。
2.獲得鍊錶第i個資料的演算法思路
(1)宣告乙個結點p 指向鍊錶第乙個結點,初始化j 從1開始;
(2)當jdata;
(6)單鏈表的插入標準語句s->next=p->next;p- >next =s ;
(7)返回成功。
4. 單鏈表第i個資料刪除結點的演算法思路
(1)宣告一結點p 指向鍊錶第乙個結點,初始化j 從1開始;
(2)當jnext 賦值給q;
(5)單鏈表的刪除標準語句p->next=q->next ;
(6)將q 結點中的資料賦值給e,作為返回;
(7)釋放q結點;
(8)返回成功。
5.單鏈表整表建立的演算法思路
(1)宣告一結點p和計數器變數i;
(2)初始化一空鍊錶l;
(3)讓l 的頭結點的指標指向null,即建立乙個帶頭結點的單鏈表;
(4)迴圈:
①生成一新結點賦值給p;
②隨機生成一數字賦值給p 的資料域p->data;
③將p 插入到頭結點與前一新結點之間。
6.單鏈表整表刪除的演算法思路如下
(1)宣告一結點p和q;
(2)將第乙個結點賦值給p;
(3)迴圈:
①將下一結點賦值給q;
②釋放p;
③將q 賦值給p。
7.單鏈表結構與順序儲存結構對比
儲存分配方式:
(1)順序儲存結構用一段連續的儲存單元依次儲存線性表的資料元素
(2)單鏈表採用鏈式儲存結構,用一組任意的儲存單元存放線性表的元素
時間效能:
①查詢:(1)順序儲存結構0(1)(2)單鏈表0(n)
②插入和冊除:
(1)順序儲存結構需要平均移動表長一半的元素,時間為0(n)
空間效能:
(1)順序儲存結構需要預分配儲存空間,分大了,浪費,分小了易發生上溢
(2)單鏈表不需要分配儲存空間,只要有就可以分配,元素個數也不受限制
結構體與鍊錶預習
一 結構體的宣告 我們把又一定聯絡的變數放在一起定義,這就是結構體,如下 struct student int num char name 20 float score stu struct student a,b,c scanf d s f stu.num,stu.name,stu.score 以...
鍊錶 環形鍊錶
環形鍊錶也叫迴圈鍊錶 可以是雙鏈表 也可以是單鏈表 操作原理和單鏈表差不多,只是最後乙個節點不在指向空 null 而是頭 head 這裡以單鏈表舉例 description 環形鍊錶 author lzq date 2018 11 3 20 46 version 1.0 public class a...
鍊錶 初識鍊錶
鍊錶 前言 小弟初學資料結構,有錯誤的地方望大家不吝賜教 認識鍊錶 列表相比陣列更具有優勢,鍊錶不同於資料和其他資料結構依靠位置來進行訪問或者其他操作,如陣列是依靠下表來運算元據。而鍊錶是通過關係來尋找或者運算元據。鍊錶的特性 插入 和 刪除 效率高,只需要變更指向的鏈結點即可。但是隨即訪問操作的效...