亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? bo2-6.c

?? 數(shù)據(jù)結(jié)構(gòu)例子代碼
?? C
字號(hào):
 /* bo2-6.c 具有實(shí)用意義的線性鏈表(存儲(chǔ)結(jié)構(gòu)由c2-5.h定義)的24個(gè)基本操作 */
 Status MakeNode(Link *p,ElemType e)
 { /* 分配由p指向的值為e的結(jié)點(diǎn),并返回OK;若分配失敗。則返回ERROR */
   *p=(Link)malloc(sizeof(LNode));
   if(!*p)
     return ERROR;
   (*p)->data=e;
   return OK;
 }

 void FreeNode(Link *p)
 { /* 釋放p所指結(jié)點(diǎn) */
   free(*p);
   *p=NULL;
 }

 Status InitList(LinkList *L)
 { /* 構(gòu)造一個(gè)空的線性鏈表 */
   Link p;
   p=(Link)malloc(sizeof(LNode)); /* 生成頭結(jié)點(diǎn) */
   if(p)
   {
     p->next=NULL;
     (*L).head=(*L).tail=p;
     (*L).len=0;
     return OK;
   }
   else
     return ERROR;
 }

 Status ClearList(LinkList *L)
 { /* 將線性鏈表L重置為空表,并釋放原鏈表的結(jié)點(diǎn)空間 */
   Link p,q;
   if((*L).head!=(*L).tail)/* 不是空表 */
   {
     p=q=(*L).head->next;
     (*L).head->next=NULL;
     while(p!=(*L).tail)
     {
       p=q->next;
       free(q);
       q=p;
     }
     free(q);
     (*L).tail=(*L).head;
     (*L).len=0;
   }
   return OK;
 }

 Status DestroyList(LinkList *L)
 { /* 銷毀線性鏈表L,L不再存在 */
   ClearList(L); /* 清空鏈表 */
   FreeNode(&(*L).head);
   (*L).tail=NULL;
   (*L).len=0;
   return OK;
 }

 Status InsFirst(LinkList *L,Link h,Link s) /* 形參增加L,因?yàn)樾栊薷腖 */
 { /* h指向L的一個(gè)結(jié)點(diǎn),把h當(dāng)做頭結(jié)點(diǎn),將s所指結(jié)點(diǎn)插入在第一個(gè)結(jié)點(diǎn)之前 */
   s->next=h->next;
   h->next=s;
   if(h==(*L).tail) /* h指向尾結(jié)點(diǎn) */
     (*L).tail=h->next; /* 修改尾指針 */
   (*L).len++;
   return OK;
 }

 Status DelFirst(LinkList *L,Link h,Link *q) /* 形參增加L,因?yàn)樾栊薷腖 */
 { /* h指向L的一個(gè)結(jié)點(diǎn),把h當(dāng)做頭結(jié)點(diǎn),刪除鏈表中的第一個(gè)結(jié)點(diǎn)并以q返回。 */
   /* 若鏈表為空(h指向尾結(jié)點(diǎn)),q=NULL,返回FALSE */
   *q=h->next;
   if(*q) /* 鏈表非空 */
   {
     h->next=(*q)->next;
     if(!h->next) /* 刪除尾結(jié)點(diǎn) */
       (*L).tail=h; /* 修改尾指針 */
     (*L).len--;
     return OK;
   }
   else
     return FALSE; /* 鏈表空 */
 }

 Status Append(LinkList *L,Link s)
 { /* 將指針s(s->data為第一個(gè)數(shù)據(jù)元素)所指(彼此以指針相鏈,以NULL結(jié)尾)的 */
   /* 一串結(jié)點(diǎn)鏈接在線性鏈表L的最后一個(gè)結(jié)點(diǎn)之后,并改變鏈表L的尾指針指向新 */
   /* 的尾結(jié)點(diǎn) */
   int i=1;
   (*L).tail->next=s;
   while(s->next)
   {
     s=s->next;
     i++;
   }
   (*L).tail=s;
   (*L).len+=i;
   return OK;
 }

 Position PriorPos(LinkList L,Link p)
 { /* 已知p指向線性鏈表L中的一個(gè)結(jié)點(diǎn),返回p所指結(jié)點(diǎn)的直接前驅(qū)的位置 */
   /* 若無(wú)前驅(qū),則返回NULL */
   Link q;
   q=L.head->next;
   if(q==p) /* 無(wú)前驅(qū) */
     return NULL;
   else
   {
     while(q->next!=p) /* q不是p的直接前驅(qū) */
       q=q->next;
     return q;
   }
 }

 Status Remove(LinkList *L,Link *q)
 { /* 刪除線性鏈表L中的尾結(jié)點(diǎn)并以q返回,改變鏈表L的尾指針指向新的尾結(jié)點(diǎn) */
   Link p=(*L).head;
   if((*L).len==0) /* 空表 */
   {
     *q=NULL;
     return FALSE;
   }
   while(p->next!=(*L).tail)
     p=p->next;
   *q=(*L).tail;
   p->next=NULL;
   (*L).tail=p;
   (*L).len--;
   return OK;
 }

 Status InsBefore(LinkList *L,Link *p,Link s)
 { /* 已知p指向線性鏈表L中的一個(gè)結(jié)點(diǎn),將s所指結(jié)點(diǎn)插入在p所指結(jié)點(diǎn)之前, */
   /* 并修改指針p指向新插入的結(jié)點(diǎn) */
   Link q;
   q=PriorPos(*L,*p); /* q是p的前驅(qū) */
   if(!q) /* p無(wú)前驅(qū) */
     q=(*L).head;
   s->next=*p;
   q->next=s;
   *p=s;
   (*L).len++;
   return OK;
 }

 Status InsAfter(LinkList *L,Link *p,Link s)
 { /* 已知p指向線性鏈表L中的一個(gè)結(jié)點(diǎn),將s所指結(jié)點(diǎn)插入在p所指結(jié)點(diǎn)之后, */
   /* 并修改指針p指向新插入的結(jié)點(diǎn) */
   if(*p==(*L).tail) /* 修改尾指針 */
     (*L).tail=s;
   s->next=(*p)->next;
   (*p)->next=s;
   *p=s;
   (*L).len++;
   return OK;
 }

 Status SetCurElem(Link p,ElemType e)
 { /* 已知p指向線性鏈表中的一個(gè)結(jié)點(diǎn),用e更新p所指結(jié)點(diǎn)中數(shù)據(jù)元素的值 */
   p->data=e;
   return OK;
 }

 ElemType GetCurElem(Link p)
 { /* 已知p指向線性鏈表中的一個(gè)結(jié)點(diǎn),返回p所指結(jié)點(diǎn)中數(shù)據(jù)元素的值 */
   return p->data;
 }

 Status ListEmpty(LinkList L)
 { /* 若線性鏈表L為空表,則返回TRUE,否則返回FALSE */
   if(L.len)
     return FALSE;
   else
     return TRUE;
 }

 int ListLength(LinkList L)
 { /* 返回線性鏈表L中元素個(gè)數(shù) */
   return L.len;
 }

 Position GetHead(LinkList L)
 { /* 返回線性鏈表L中頭結(jié)點(diǎn)的位置 */
   return L.head;
 }

 Position GetLast(LinkList L)
 { /* 返回線性鏈表L中最后一個(gè)結(jié)點(diǎn)的位置 */
   return L.tail;
 }

 Position NextPos(Link p)
 { /* 已知p指向線性鏈表L中的一個(gè)結(jié)點(diǎn),返回p所指結(jié)點(diǎn)的直接后繼的位置 */
   /* 若無(wú)后繼,則返回NULL */
   return p->next;
 }

 Status LocatePos(LinkList L,int i,Link *p)
 { /* 返回p指示線性鏈表L中第i個(gè)結(jié)點(diǎn)的位置,并返回OK,i值不合法時(shí)返回ERROR */
   /* i=0為頭結(jié)點(diǎn) */
   int j;
   if(i<0||i>L.len)
     return ERROR;
   else
   {
     *p=L.head;
     for(j=1;j<=i;j++)
       *p=(*p)->next;
     return OK;
   }
 }

 Position LocateElem(LinkList L,ElemType e,Status (*compare)(ElemType,ElemType))
 { /* 返回線性鏈表L中第1個(gè)與e滿足函數(shù)compare()判定關(guān)系的元素的位置, */
   /* 若不存在這樣的元素,則返回NULL */
   Link p=L.head;
   do
     p=p->next;
   while(p&&!(compare(p->data,e))); /* 沒(méi)到表尾且沒(méi)找到滿足關(guān)系的元素 */
   return p;
 }

 Status ListTraverse(LinkList L,void(*visit)(ElemType))
 { /* 依次對(duì)L的每個(gè)數(shù)據(jù)元素調(diào)用函數(shù)visit()。一旦visit()失敗,則操作失敗 */
   Link p=L.head->next;
   int j;
   for(j=1;j<=L.len;j++)
   {
     visit(p->data);
     p=p->next;
   }
   printf("\n");
   return OK;
 }

 Status OrderInsert(LinkList *L,ElemType e,int (*comp)(ElemType,ElemType))
 { /* 已知L為有序線性鏈表,將元素e按非降序插入在L中。(用于一元多項(xiàng)式) */
   Link o,p,q;
   q=(*L).head;
   p=q->next;
   while(p!=NULL&&comp(p->data,e)<0) /* p不是表尾且元素值小于e */
   {
     q=p;
     p=p->next;
   }
   o=(Link)malloc(sizeof(LNode)); /* 生成結(jié)點(diǎn) */
   o->data=e; /* 賦值 */
   q->next=o; /* 插入 */
   o->next=p;
   (*L).len++; /* 表長(zhǎng)加1 */
   if(!p) /* 插在表尾 */
     (*L).tail=o; /* 修改尾結(jié)點(diǎn) */
   return OK;
 }

 Status LocateElemP(LinkList L,ElemType e,Position *q,int(*compare)(ElemType,ElemType))
 { /* 若升序鏈表L中存在與e滿足判定函數(shù)compare()取值為0的元素,則q指示L中 */
   /* 第一個(gè)值為e的結(jié)點(diǎn)的位置,并返回TRUE;否則q指示第一個(gè)與e滿足判定函數(shù) */
   /* compare()取值>0的元素的前驅(qū)的位置。并返回FALSE。(用于一元多項(xiàng)式) */
   Link p=L.head,pp;
   do
   {
     pp=p;
     p=p->next;
   }while(p&&(compare(p->data,e)<0)); /* 沒(méi)到表尾且p->data.expn<e.expn */
   if(!p||compare(p->data,e)>0) /* 到表尾或compare(p->data,e)>0 */
   {
     *q=pp;
     return FALSE;
   }
   else /* 找到 */
   {
     *q=p;
     return TRUE;
   }
 }

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美在线|欧美| 国产日韩欧美精品综合| 国产精品69久久久久水密桃| 亚洲丝袜美腿综合| 久久亚洲私人国产精品va媚药| 在线亚洲欧美专区二区| 国产成人精品影院| 美国毛片一区二区三区| 亚洲国产成人av| 国产精品二三区| 久久精品视频免费观看| 欧美一区二区二区| 欧美亚洲国产一区二区三区| 成人av电影免费在线播放| 毛片av一区二区| 午夜天堂影视香蕉久久| 一区二区三区四区国产精品| 中文字幕国产一区| 精品乱人伦一区二区三区| 欧美日韩夫妻久久| 色悠悠久久综合| 97久久超碰国产精品| 成人黄色小视频| 国产.欧美.日韩| 国产99一区视频免费| 国产一区二区三区高清播放| 日韩国产精品久久久久久亚洲| 亚洲一区二区三区四区的| 亚洲精品国产无天堂网2021 | 国产精品911| 精品在线观看免费| 日本人妖一区二区| 日韩二区三区在线观看| 日韩黄色免费网站| 午夜视频在线观看一区二区三区| 亚洲五码中文字幕| 亚洲国产一区二区视频| 婷婷中文字幕综合| 无吗不卡中文字幕| 日韩国产高清在线| 日韩精品一二三四| 美女在线观看视频一区二区| 蜜臀久久99精品久久久画质超高清 | 午夜av电影一区| 日产欧产美韩系列久久99| 天堂成人国产精品一区| 免费三级欧美电影| 国产一区二区在线观看免费| 国产成人午夜精品影院观看视频 | 精品理论电影在线观看| 久久五月婷婷丁香社区| 国产亚洲精品aa| 成人免费在线观看入口| 亚洲高清免费视频| 日韩高清在线电影| 国产麻豆成人精品| 成人app软件下载大全免费| 色偷偷久久一区二区三区| 在线观看视频一区| 欧美一卡在线观看| 久久精品一区二区三区av| 国产精品网站在线播放| 国产成人激情av| 91在线播放网址| 欧美高清视频一二三区| 久久蜜桃香蕉精品一区二区三区| 国产精品亲子乱子伦xxxx裸| 一区二区成人在线| 麻豆精品在线看| www.久久精品| 欧美剧在线免费观看网站| 精品国产网站在线观看| 国产精品成人在线观看| 亚洲国产乱码最新视频 | 欧美日韩精品专区| 久久免费电影网| 亚洲另类春色国产| 美洲天堂一区二卡三卡四卡视频| 成人深夜在线观看| 91麻豆精品国产91久久久使用方法| 久久久久久免费网| 亚洲丰满少妇videoshd| 国产美女精品人人做人人爽| 在线精品视频一区二区三四| 久久只精品国产| 亚洲成av人片在线观看无码| 国产盗摄一区二区三区| 欧美日韩日日夜夜| 国产精品美女久久久久aⅴ| 五月天丁香久久| 97精品电影院| 欧美精品一区二| 亚洲高清在线精品| 国产精品一二三四区| 欧美日韩国产123区| 中文字幕一区二区三区在线观看| 蜜臀av性久久久久av蜜臀妖精| 91麻豆国产福利精品| 国产视频一区在线播放| 蜜臀av性久久久久蜜臀aⅴ| 在线视频欧美精品| 国产精品久久久久久久第一福利 | 国产精选一区二区三区| 欧美一区二区三区性视频| 国产超碰在线一区| 欧美一区二区视频观看视频| 亚洲男人的天堂网| 国产成人一级电影| 精品国产乱码久久久久久久久 | 高清国产午夜精品久久久久久| 欧美日韩日日摸| 玉米视频成人免费看| 国产成人av福利| 精品久久久久久无| 男人的j进女人的j一区| 欧美日韩国产欧美日美国产精品| 亚洲天堂av老司机| www.一区二区| 国产精品免费看片| 成人av网站免费观看| 国产欧美日韩在线| 国产69精品久久久久毛片| 精品久久久久久最新网址| 麻豆久久久久久久| 日韩欧美成人一区| 美女精品一区二区| 精品久久久久久久人人人人传媒| 日本欧美韩国一区三区| 欧美一区二区久久久| 奇米影视7777精品一区二区| 91精品国产麻豆国产自产在线| 亚洲成人先锋电影| 欧美日韩亚洲不卡| 日韩精品1区2区3区| 日韩午夜在线观看| 韩日欧美一区二区三区| 久久久久久久久蜜桃| 丰满放荡岳乱妇91ww| 国产精品久久三| 色综合久久综合网97色综合| 亚洲综合在线视频| 欧美探花视频资源| 五月天中文字幕一区二区| 日韩一区二区在线免费观看| 久久99精品国产.久久久久| 欧美tickle裸体挠脚心vk| 国产精品系列在线播放| 国产精品欧美极品| 在线观看91精品国产入口| 日韩电影一区二区三区| 久久这里只有精品首页| 成人高清免费在线播放| 亚洲女厕所小便bbb| 欧美日韩免费高清一区色橹橹 | 国产精品无人区| 91久久精品一区二区三| 水野朝阳av一区二区三区| 日韩欧美一级精品久久| 国产1区2区3区精品美女| 亚洲精品ww久久久久久p站| 911国产精品| 国产剧情在线观看一区二区| ...xxx性欧美| 欧美一级二级三级蜜桃| 国产91精品入口| 亚洲成人av免费| 久久精品欧美日韩精品| 欧美性色aⅴ视频一区日韩精品| 免费一区二区视频| 国产日韩高清在线| 欧美日韩国产成人在线91| 国产精品一区二区在线看| 亚洲精品国产第一综合99久久 | 97精品久久久午夜一区二区三区 | 日韩美女主播在线视频一区二区三区| 精品亚洲免费视频| 亚洲欧洲日本在线| 欧美成人国产一区二区| 色悠悠亚洲一区二区| 韩国中文字幕2020精品| 亚洲一区二区三区视频在线播放 | 日韩一区欧美小说| 日韩亚洲电影在线| 91小视频免费观看| 激情综合网最新| 亚洲黄色免费电影| 久久九九久久九九| 欧美浪妇xxxx高跟鞋交| 成人精品小蝌蚪| 蜜臀av性久久久久蜜臀av麻豆| 国产精品高潮呻吟| 亚洲精品一线二线三线无人区| 在线精品视频免费播放| 成人少妇影院yyyy| 激情六月婷婷久久| 日韩精品五月天| 亚洲精选一二三| 欧美激情中文不卡| 欧美成人性战久久| 精品视频999|