單鏈表基本操作

2021-06-23 09:14:57 字數 1818 閱讀 7798

#include using namespace std;

#define namelenth 20

#define ok 0

#define error 1

typedef struct flagnode

node;

/***************************

*生成結點

***************************/

inline node *newnode()

/***************************

*銷毀化煉表

***************************/

void destroylink(node *phead)

delete phead;

}}/***************************

*初始化鍊錶

***************************/

node *initlink(node *phead)

return(newnode());

}/***************************

*向鍊錶新增新結點

前插***************************/

void addnodetolinkhead(node *phead,int cardnumber,char *name)

node *newnodeadd = newnode();

newnodeadd->number = cardnumber;

memcpy(newnodeadd->name,name,namelenth*sizeof(char));

newnodeadd->pnext = phead->pnext;

phead->pnext = newnodeadd;

return;

}/***************************

*計算鍊錶長度

***************************/

int getlenthlink(node *phead)

}return lenth;

}/***************************

*插入結點

輸入的不是下標,而是第幾個,所以至少是1

***************************/

int insertnode(node *phead,unsigned int location,int number,char *pname)

lenth = getlenthlink(phead);

if(lenthnumber = number;

memcpy(tmpnode->name,pname,namelenth*sizeof(char));

for(i=1;ipnext;

}tmpnode->pnext = phead->pnext;

phead->pnext = tmpnode;

return ok;

}int main(void)

; node *headlink = null;

headlink = initlink(headlink);

addnodetolinkhead(headlink,cardnumber,name);

lenth = getlenthlink(headlink);

if(insertnode(headlink,locationarr,cardnumber,name))

else

}

單鏈表基本操作

include include include include includeusing namespace std typedef struct node node,plinklist plinklist createfromhead node pstnode node malloc sizeof...

單鏈表基本操作

單鏈表的初始化,建立,插入,查詢,刪除。author wang yong date 2010.8.19 include include typedef int elemtype 定義結點型別 typedef struct node node,linkedlist 單鏈表的初始化 linkedlist...

單鏈表基本操作

主要是單鏈表的一些常見操作 像建立鍊錶,刪除結點,插入結點,鍊錶逆序,按大小排序等 1 include 2 using namespace std 34 struct node59 10 11 建立帶有頭結點的單鏈表 12void create node head 1327 28 29 獲得鍊錶長度...