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

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

【C語言數(shù)據(jù)結(jié)構(gòu)】順序表

2021-08-20 11:12 作者:Vecloud_  | 我要投稿


SeqList.h?

#ifndefSEQ_LIST_H#defineSEQ_LIST_HtypedefvoidSeqListNode;typedefvoidSeqList;/**創(chuàng)建順序表*@paramcapacity順序表的最大容量*@return返回順序表的指針*/SeqList*SeqList_Create(unsignedintcapacity);/**銷毀順序表*@paramlist順序表的指針*/voidSeqList_Destroy(SeqList*list);/**清空順序表*@paramlist順序表的指針*/voidSeqList_Clear(SeqList*list);/**向順序表pos位置處插入元素*@paramlist順序表指針*@paramnode元素指針*@parampos插入的索引*/intSeqList_Insert(SeqList*list,SeqListNode*node,intpos);/**獲取順序表中索引位置處的元素*@paramlist順序表指針*@parampos順序表索引值*@paramreturn元素指針*/SeqListNode*SeqList_Get(SeqList*list,intpos);/**刪除順序表中索引位置處的值*@paramlist順序表的指針*@parampos順序表索引*@paramreturn非0表示刪除成功*/intSeqList_Remove(SeqList*list,intpos);/**獲取順序表當(dāng)前已存儲元素的個(gè)數(shù)*@paramlist順序表的指針*@return順序表中已存儲元素的個(gè)數(shù)*/intSeqList_Length(SeqList*list);/**獲取順序表最大可存儲元素的個(gè)數(shù)*@paramlist順序表的指針*@return順序表最大可存儲元素的個(gè)數(shù)*/intSeqList_Capacity(SeqList*list);#endif//SEQLIST_HSeqList.c?
#include"SeqList.h"#include<malloc.h>typedefunsignedintTSeqListNode;//順序表節(jié)點(diǎn)typedefstruct_SeqList{unsignedintlength;//順序表已存儲元素的個(gè)數(shù)unsignedintcapacity;//順序表最大可存儲元素的個(gè)數(shù)TSeqListNode*element[];//順序表節(jié)點(diǎn)柔性數(shù)組}TSeqList;/**創(chuàng)建順序表*@paramcapacity順序表的最大容量*@return返回順序表的指針*/SeqList*SeqList_Create(unsignedintcapacity){TSeqList*list=0;//創(chuàng)建一個(gè)可容納SeqList結(jié)構(gòu)體與柔性節(jié)點(diǎn)的空間intsize=sizeof(TSeqList)+sizeof(TSeqListNode)*capacity;list=(TSeqList*)malloc(size);if(list!=0){list->length=0;list->capacity=capacity;}returnlist;}/**銷毀順序表*@paramlist順序表的指針*/voidSeqList_Destroy(SeqList*list){free(list);}/**清空順序表*@paramlist順序表的指針*/voidSeqList_Clear(SeqList*list){TSeqList*s_list=(TSeqList*)list;if(s_list!=0){s_list->length=0;}}/**向順序表pos位置處插入元素*@paramlist順序表指針*@paramnode元素指針*@parampos插入的索引*@paramreturn返回非0表示插入成功*/intSeqList_Insert(SeqList*list,SeqListNode*node,intpos){inti;//判斷順序表指針和被插入元素的指針是否為空intret=((list!=0)&&(node!=0));TSeqList*s_list=(TSeqList*)list;TSeqListNode*s_node=(TSeqListNode*)node;//判斷插入的索引是否合法,數(shù)組空間是否剩余ret=((pos>=0)&&(pos<=s_list->length)&&(s_list->length+1<=s_list->capacity));if(ret){//參數(shù)合法,可以插入//從最后一個(gè)開始把數(shù)據(jù)往后挪for(i=s_list->length;i>pos;i--){s_list->element[i]=s_list->element[i-1];}s_list->element[i]=s_node;s_list->length++;}returnret;}/**獲取順序表中索引位置處的元素*@paramlist順序表指針*@parampos順序表索引值*@paramreturn元素指針*/SeqListNode*SeqList_Get(SeqList*list,intpos){SeqListNode*s_node=0;TSeqList*s_list=(TSeqList*)list;if((s_list!=0)&&(pos>=0)&&(pos<s_list->length)){s_node=s_list->element[pos];}returns_node;}/**刪除順序表中索引位置處的值*@paramlist順序表的指針*@parampos順序表索引*@paramreturn順序表中索引位置處元素的值*/intSeqList_Remove(SeqList*list,intpos){inti;TSeqList*s_list=(TSeqList*)list;intret=((s_list!=0)&&(pos>=0)&&(pos<s_list->length));if(ret){for(i=pos+1;i<s_list->length;i++){s_list->element[i-1]=s_list->element[i];}s_list->length--;}returnret;}/**獲取順序表當(dāng)前已存儲元素的個(gè)數(shù)*@paramlist順序表的指針*@return順序表中已存儲元素的個(gè)數(shù)*/intSeqList_Length(SeqList*list){TSeqList*s_list=(TSeqList*)list;intret=-1;if(s_list!=0){ret=s_list->length;}returnret;}/**獲取順序表最大可存儲元素的個(gè)數(shù)*@paramlist順序表的指針*@return順序表最大可存儲元素的個(gè)數(shù)*/intSeqList_Capacity(SeqList*list){TSeqList*s_list=(TSeqList*)list;intret=(s_list!=0);if(ret){ret=s_list->capacity;}returnret;}?

了解更多網(wǎng)絡(luò)知識關(guān)注:http://www.vecloud.com/

【C語言數(shù)據(jù)結(jié)構(gòu)】順序表的評論 (共 條)

分享到微博請遵守國家法律
屯留县| 平凉市| 凤凰县| 巴林左旗| 宜春市| 博湖县| 喀什市| 鲁山县| 个旧市| 台北县| 富裕县| 海丰县| 安乡县| 涡阳县| 卢湾区| 武定县| 宁都县| 泽普县| 湖南省| 南安市| 广宁县| 岑溪市| 泗水县| 东乌珠穆沁旗| 科技| 谢通门县| 青龙| 蓬安县| 措美县| 怀安县| 卢氏县| 博湖县| 瑞金市| 溧水县| 海晏县| 津南区| 安多县| 南安市| 阳原县| 中超| 温泉县|