struct Node;
// 單鏈表可由頭指針唯一確定,在C語言中可以使用‘結(jié)構(gòu)體指針’描述。
typedef struct Node *PtrToNode;
typedef PtrToNode List;
typedef PtrToNode Position;
typedef int ElementType;
// 節(jié)點
struct Node {
ElementType Element;
Position Next;
};
// 是否是空表
int isEmpty(List l) {
return l -> Next == NULL;
}
// 是否是鏈表的末尾
int isLast(Position p) {
return p -> Next == NULL;
}
// 查找,時間復(fù)雜度 O(N)
Position find(ElementType x, List l) {
Position p;
p = l -> Next;
while (p != NULL && p -> Element != x) {
p = p -> Next;
}
return p;
}
// 查找x的前驅(qū)元袜香,時間復(fù)雜度 O(N)
Position findPrevious(ElementType x, List l) {
Position p;
p = l;
while (p -> Next != NULL && p -> Next -> Element != x) {
p = p -> Next;
}
return p;
}
// 刪除罪郊,時間復(fù)雜度 O(N)
void delete(ElementType x, List l) {
Position p, tmpCell;
p = findPrevious(x, l);
if (!isLast(p)) {
tmpCell = p -> Next;
p -> Next = tmpCell -> Next;
free(tmpCell);
}
}
// 插入邑遏,時間復(fù)雜度 O(1)
void insert(ElementType x ,List l, Position p) {
Position tmpCell;
tmpCell = malloc(sizeof(struct Node));
if (tmpCell == NULL) {
printf("out of space");
}
tmpCell -> Element = x;
tmpCell -> Next = p -> Next;
p -> Next = tmpCell;
}
C語言 - 鏈表
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來啤咽,“玉大人晋辆,你說我怎么就攤上這事∮钫” “怎么了瓶佳?”我有些...
- 文/不壞的土叔 我叫張陵,是天一觀的道長鳞青。 經(jīng)常有香客問我霸饲,道長为朋,這世上最難降的妖魔是什么? 我笑而不...
- 正文 為了忘掉前任厚脉,我火速辦了婚禮习寸,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘傻工。我一直安慰自己霞溪,他們只是感情好,可當(dāng)我...
- 文/花漫 我一把揭開白布中捆。 她就那樣靜靜地躺著鸯匹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪泄伪。 梳的紋絲不亂的頭發(fā)上殴蓬,一...
- 文/蒼蘭香墨 我猛地睜開眼球散,長吁一口氣:“原來是場噩夢啊……” “哼尿赚!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起蕉堰,我...
- 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響迷殿,放射性物質(zhì)發(fā)生泄漏儿礼。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一庆寺、第九天 我趴在偏房一處隱蔽的房頂上張望蚊夫。 院中可真熱鬧,春花似錦止邮、人聲如沸这橙。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽屈扎。三九已至,卻和暖如春撩匕,著一層夾襖步出監(jiān)牢的瞬間鹰晨,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 今天小編給大家?guī)韈語言難點--鏈表的講解卤妒,一步一步教你從零開始寫C語言鏈表---構(gòu)建一個鏈表。 為什么要學(xué)習(xí)鏈表...
- 一 需求分析 企業(yè)員工管理系統(tǒng)主要是針對企業(yè)員工的基本信息進(jìn)行增字币、刪则披、改、查的相關(guān)操作洗出,以便用戶使用本管理系統(tǒng)時可...
- 鏈表是我們學(xué)習(xí)C語言避不開的問題士复,就讓我們一起飛過去看看吧: 1 定義鏈表 鏈表是C語言編程中常用的數(shù)據(jù)結(jié)構(gòu),比如...
- 一天晚上翩活,你正蒙在被子里玩手機(jī)阱洪,你突然發(fā)現(xiàn),你抱著一個小女孩菠镇,她輕輕地說:“好啦澄峰,不要看手機(jī)了,睡覺了喔~” 你去...