資料結構學習筆記1 單鏈表

2021-09-05 12:32:02 字數 1184 閱讀 7417

單鏈表作為一種簡單的線性資料結構,是一種較為基礎的資料結構,我利用c++**實現了它的一部分基本功能。這些演算法都是較為基本的,只需要注意其邏輯即可,值得一提的是,l作為頭節點,在每次操作的時候都要將其賦值給別的指標,以免產生混亂。

#includeusing namespace std;

struct lnode;

typedef lnode* linklist;

//creat list

bool initlist_l(linklist &l)

l->next = null;

return true;

}//前插法構造

void creat_list_h(linklist &l)

} //尾插法構造

void creat_list_b(linklist &l)

} //查詢元素

bool get_elem(linklist &l,int e)

if(!p)

return true;

} //單鏈表的插入,在第i個位置插入元素e

bool list_insert(linklist &l,int i,int e)

while(!p||j>i-1)

return false;

s = new lnode;

s->data = e;

s->next = p->next;

p->next = s;

return true;

} //單鏈表的刪除,刪除第i個元素

bool list_delete(linklist &l,int i)

if (!(p->next)||(j>i-1))

return false;

q = p->next;

p->next = q->next;

delete q;

return true;

} //輸出單鏈表

void list_print(linklist &l)

cout<>choose;

switch(choose)

else

break;

case 7:

list_print(l);

cout

} } return 0;

}

資料結構學習筆記 單鏈表

陣列優勢在於快速定位元素,對於讀操作多,寫操作少的場景,陣列更合適 鍊錶優勢在於快速的插入和刪除操作,如果頻繁的在尾部刪除和插入元素,用鍊錶更好 package com.cc.node public class nodedemo1 private node head private node las...

資料結構學習筆記 單鏈表

準備知識在另一篇部落格 單鏈表預備知識 建立單鏈表 頭插法 每次都是從頭結點插入乙個元素的方法,所以它是倒序的。struct lnode 建立結點結構體,由資料域和指標域組成 linknode void createlistf linknode l,elemtype a,int n 從陣列a中讀取資...

資料結構學習筆記3 單鏈表

1.相對於順序表的線性儲存,順序表的鏈式儲存 單鏈表為例 最突出的優點 對元素的插入與刪除非常快 順序表的線性儲存插入和刪除需要移動大量的元素,操作速度緩慢 而獲取元素的速度相對而言比較快 單鏈表剛好和他相反,插入和刪除很快,獲取元素速度比不上線性表 2.單鏈表的形式 3.單鏈表的插入和刪除 4.除...