帶頭結點的單鏈表總結

2021-08-05 21:56:56 字數 1832 閱讀 4411

void initlist(linklist &l)

1.
void createlisth(linklist &l,int a,int n)

}

2.
linklist createlisth(linklist l,int a,int n)

return l;

}

分析:以上兩個函式區別在於返回值不同,當無返回值時,建議用引用來隨時更新鍊錶狀態;當有返回值時要返回後續需要的東西。

void createliste(linklist &l,int a,int n)

r->next=null;//確定最後乙個指標指向空

}

void listinsert(linklist &l,int i,int e)

if(p==null)

else

}

void listdelete(linklist &l,int i)

if(p==

null)

else

}p->next=q->next;

delete(q);

}

void listsort(linklist &l,int n)

p=p->next;

}n--;

p=l->next;//將指標重新返回到第乙個節點;

}}

測試**

#include

#include

#include

using

namespace

std;

typedef

struct lnode //資料節點

*linklist;

//typedef struct lnode* linklist;

void initlist(linklist &l)

void createlisth(linklist &l,int a,int n)

}void createliste(linklist &l,int a,int n)

r->next=null;

}void cout1(linklist l)

}void listinsert(linklist &l,int i,int e)

if(p==null)

else

}void listdelete(linklist &l,int i)

if(p==null)

void listsort(linklist &l,int n)

p=p->next;

}n--;

p=l->next;//將指標重新返回到第乙個節點;

}}int main(void)

initlist(l);

initlist(l1);

createlisth(l,a,number);

cout1(l);

listsort(l,number);

cout

<"please input a number:";

cin>>e;

listinsert(l,3,e);

cout1(l);

cout

<4);

cout1(l);

return

0;}

帶頭結點的單鏈表

帶頭結點的單鏈表 1 頭結點 在棧區開闢,指標域指向第乙個首元結點,資料域不儲存資料,可以儲存當前結點的個數 2 普通結點 無論是頭結點還是普通結點都是乙個結構體型別,由指標域和資料域組成 指標域指向下乙個結點,儲存下乙個結點的位址 資料域可以設定成聯合體型別,成員由資料元素和結點個數組成,之所以將...

帶頭結點的單鏈表

include include define error printf struct node typedef int elementtype typedef struct node list typedef struct node node struct node list initialize ...

帶頭結點的單鏈表

帶頭節點的單鏈表 include include using namespace std typedef struct listnode node,pnode 新建結點,num表示結點個數 pnode newnode int num pnode temp head temp next null fo...