五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

數(shù)據(jù)結(jié)構(gòu)

2023-03-16 15:41 作者:學(xué)習(xí)使我快樂無邊  | 我要投稿

#include <stdio.h>

#include <malloc.h>

typedef char ElemType;

typedef struct LNode? ? //定義單鏈表結(jié)點類型

{

? ? ElemType data;

? ? struct LNode *next;

} LinkList;

void InitList(LinkList *&L);? ? ? ? //初始化線性表

void DestroyList(LinkList *&L);? ? //銷毀線性表

bool ListEmpty(LinkList *L);//判線性表是否為空表

int ListLength(LinkList *L);? ? //求線性表的長度

void DispList(LinkList *L);//輸出線性表

bool GetElem(LinkList *L,int i,ElemType &e)? ? ;//求線性表中某個數(shù)據(jù)元素值

int LocateElem(LinkList *L,ElemType e);//按元素值查找

bool ListInsert(LinkList *&L,int i,ElemType e);? ? //插入數(shù)據(jù)元素

bool ListDelete(LinkList *&L,int i,ElemType &e)? ? ;//刪除數(shù)據(jù)元素

int main()

{

? ? LinkList *h;

? ? ElemType e;

? ? printf("單鏈表的基本運算如下:\n");

? ? printf("? (1)初始化單鏈表h\n");

? ? InitList(h);

? ? printf("? (2)依次采用尾插法插入a,b,c,d,e元素\n");

? ? ListInsert(h,1,'a');

? ? ListInsert(h,2,'b');

? ? ListInsert(h,3,'c');

? ? ListInsert(h,4,'d');

? ? ListInsert(h,5,'e');

? ? printf("? (3)輸出單鏈表h:");

? ? DispList(h);

? ? printf("? (4)單鏈表h長度=%d\n",ListLength(h));

? ? printf("? (5)單鏈表h為%s\n",(ListEmpty(h)?"空":"非空"));

? ? GetElem(h,3,e);

? ? printf("? (6)單鏈表h的第3個元素=%c\n",e);

? ? printf("? (7)元素a的位置=%d\n",LocateElem(h,'a')+1);

? ? printf("? (8)在第4個元素位置上插入f元素\n");

? ? ListInsert(h,4,'f');

? ? printf("? (9)輸出單鏈表h:");

? ? DispList(h);

? ? printf("? (10)刪除h的第3個元素\n");

? ? ? ? ListDelete(h,3,e);

? ? printf("? (11)輸出單鏈表h:");

? ? DispList(h);

? ? printf("? (12)釋放單鏈表h\n");

? ? DestroyList(h);

}

int ListLength(LinkList* L)

{

LinkList* Ltemp = L->next;

int a = 0;

while (Ltemp != NULL)

{

a++;

Ltemp = Ltemp->next;

}

return a;

}

void InitList(LinkList*& L)

{

L = (LinkList*)malloc(sizeof(LinkList));

L->next = NULL;

}

bool ListInsert(LinkList*& L, int i, char e)

{

int j = 0;

LinkList* Ltemp = L, * Lnew;

if (i <= 0)return false;

while (j < i - 1 && Ltemp != NULL)

{

j++;

Ltemp = Ltemp->next;

}

if (Ltemp == NULL)return false;

else

{

Lnew = (LinkList*)malloc(sizeof(LinkList));

Lnew->data = e;

Lnew->next = Ltemp->next;

Ltemp->next = Lnew;

return true;

}


}

void DispList(LinkList* L)

{

LinkList* Ltemp = L->next;

while (Ltemp != NULL)

{

printf("%c ", Ltemp->data);

Ltemp = Ltemp->next;

}

printf("\n");

}

bool ListEmpty(LinkList* L)

{

if (L->next == NULL)return true;

else return false;

}

bool GetElem(LinkList* L, int i, char& e)

{

LinkList* Ltemp = L;

for (int a = 0; a < i; a++)

{

Ltemp = Ltemp->next;

}

e = Ltemp->data;

return true;

}

int LocateElem(LinkList* L, char e)

{

LinkList* Ltemp = L;

int a = ListLength(L);

for (int i = 0; i < a; i++)

{

if (Ltemp->data == e)return i;

}

return 0;

}

bool ListDelete(LinkList*& L, int i, char& e)

{

LinkList* Ltemp = L, * Lde = L;

int a = 0;

for (; a < i; a++)Ltemp = Ltemp->next;

while (Lde->next != Ltemp)Lde = Lde->next;

Lde->next = Ltemp->next;

free(Ltemp);

return true;

}

void DestroyList(LinkList*& L)

{

LinkList* Ltemp = L;

while (Ltemp != NULL)

{

LinkList* d = Ltemp;

Ltemp = Ltemp->next;

free(d);

}

}


數(shù)據(jù)結(jié)構(gòu)的評論 (共 條)

分享到微博請遵守國家法律
罗源县| 临颍县| 东港市| 灵武市| 敖汉旗| 建德市| 五峰| 前郭尔| 梅河口市| 鞍山市| 天台县| 临海市| 宜宾市| 康乐县| 八宿县| 马尔康县| 云浮市| 栾川县| 都昌县| 北安市| 常宁市| 松原市| 巴青县| 淮阳县| 济阳县| SHOW| 德江县| 龙岩市| 尉犁县| 郴州市| 松江区| 遂川县| 疏勒县| 济宁市| 连南| 稷山县| 远安县| 陇南市| 徐州市| 垫江县| 塔城市|