單鏈表整表建立和整表刪除

2021-06-25 08:51:58 字數 901 閱讀 6507

對於每個鍊錶來說,它所占用空間的大小和位置是不需要預先分配劃定的,可以根據系統的情況和實際的需求即使生成。

所以建立單鏈表的過程就是乙個動態生成鍊錶的過程。即從「空表」的初始狀態開始,依次建立各元素結點,並逐個插入鍊錶

單鏈表整表建立的演算法思路

1、宣告一指標p和計數器變數i;

2、初始化一空鍊錶l;

3、讓l的頭結點的指標指向null,即建立乙個帶頭結點的單鏈表;

4、迴圈:

--生成一新結點賦值給p;

--隨機生成一數字賦值給p的資料域p->data;

--將p插入到頭結點與前一新結點之間

/*隨機產生n個元素的值,建立帶表頭結點的單鏈線性表l(頭插法)*/

void createlisthead(linklist *l,int n)

}

/*隨機產生n個元素的值,建立帶表頭結點的單鏈線性表l(尾插法)*/

void createlisthead(linklist *l,int n)

r-next=null;/*表示鍊錶結束*/

}

單鏈表整表刪除的演算法思路:

1、宣告一指標p和q;

2、將第乙個結點賦值給p;

3、迴圈:

--將下一節點賦值給q;

--釋放p;

--將q賦值給p。

/*操作結果:將l重置為空表*/

status clearlist(linklist *l)

(*l)->next=null;/*頭結點指標域為空*/

return ok;

}

單鏈表的整表建立和刪除 四

單鏈表的整表建立和刪除 一 單鏈表的整表建立 建立單鏈表的過程是乙個動態生成鍊錶的過程,從 空表 的初始狀態起,依次建立各元素結點並逐個插入鍊錶。單鏈表整表建立的演算法思路如下 1 宣告一結點p 2 初始化一空鍊錶l 3 建立乙個帶頭結點的單鏈表,即讓l的頭結點的指標指向null。4 迴圈實現後繼結...

資料結構單鏈表插入 整表刪除 整表建立

0 單鏈表插入 單鏈表插入的時間複雜度 從頭查詢到插入點 o n 執行插入操作 o 1 單鏈表刪除 status listdelete linklist l,int i,elemtype e if p next j i q p next p next q next e q data free q r...

單鏈表的整表建立

單鏈表整表建立的演算法思路 1 宣告一節點p和計數變數i 2 初始化一空鍊錶l 3 讓l的頭節點的指標指向null,即建立乙個帶頭節點的單鏈表 4 迴圈 實現 演算法如下 隨機產生n個元素的值,建立帶表頭節點的單鏈線性表l 頭插法 void creatlisthead linklist l,int ...