1.設計乙個遞迴演算法,刪除不帶頭結點的單鏈表工中所有值為x的結點。
#include#include#include#include#include#include#include#include#includeusing namespace std;
// 鍊錶節點結構
typedef struct node;
node(int data):data(data), next(null){};
}node, *linklist;
// 遞迴刪除所有x
void deletex(linklist &l, int x)
if(l->data == x)else
}// 頭插法建立無頭鍊錶
void createlinklist(vectorv, linklist &l)
} // 輸出單鏈表
void show(linklist l)
} int main();
vectorv(a, a+6);
linklist l;
createlinklist(v, l);
show(l);
deletex(l, 1);
return 0;
}
不帶頭結點的單鏈表
slist.h pragma once typedef int sldatatype typedef struct slistnode slistnode 不帶頭節點的單鏈表 鍊錶初始化 void slistinit slistnode phead 建立新結點 slistnode slistnewn...
不帶頭結點的單鏈表
不帶頭結點的鍊錶的實現 核心是直接設定頭指標指向第乙個節點 要注意此時的l的位址可能會發生改變.同時還要注意一級指標和二級指標的區別.注意linklist l和linklist l的區別 和帶結點的單鏈表的操作相比較,要考慮到頭指標就是頭結點,在一些會改變頭結點的情況下要仔細考慮.include i...
不帶頭結點的單鏈表
單鏈表也可以不設頭結點,如圖212 所示。顯 然,基於這種結構的基本操作和帶有頭結點的線性鏈 表基本操作是不同的。bo2 8.cpp 是不帶頭結點的線 性鍊錶的基本操作。bo2 8.cpp 不帶頭結點的單鏈表 儲存結構由c2 2.h定義 的部分基本操作 9個 define destroylist c...