鍗曢摼琛ㄧ殑鍩烘湰鎿嶄綔
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了鍗曢摼琛ㄧ殑鍩烘湰鎿嶄綔相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/int' title='int'>int
empty type link div 鍒濆 node bsp 鍩烘湰1 #define int Status 2 #define OK 1 3 #define ERROR 0 4 struct struct { //姝ゅ涓轰妇渚? 5 char num[10]; //鏁版嵁鍩? 6 char name[10];//鏁版嵁鍩? 7 int score;//鏁版嵁鍩? 8 }ElemType; 9 typedef struct Lnode{ 10 ElemType data;//鏁版嵁鍩? 11 struct Lnode *next; //鎸囬拡鍩? 12 }Lnode,*Linklist; 13 //鍒濆鍖栭摼琛?鏋勯€犱竴涓┖琛? 14 int initList_L(Linklist L){ 15 L=(Lintlist)malloc(sizeof(Lnode)); 16 L->next=NULL; 17 return OK; 18 } 19 //鍒ゆ柇閾捐〃鏄惁涓虹┖琛?/span> 20 int ListEmpty(Linklist L){ //鑻涓虹┖琛紝杩斿洖1锛涜嫢闈炵┖杩斿洖0 21 if(L->next) 22 return 0; 23 else 24 return 1; 25 } 26 //鍗曢摼琛ㄧ殑閿€姣?27 //浠庡ご鎸囬拡寮€濮嬶紝渚濇閲婃斁鎵€鏈夎妭鐐? 28 Status DestroyList_L(Linklist L){ 29 Linklist p; 30 while(L!=NULL){ 31 p=L; 32 L=L->next; 33 free(p); 34 } 35 return OK; 36 } 37 38 //娓呯┖鍗曢摼琛?39 //閾捐〃浠荤劧瀛樺湪锛屼絾閾捐〃涓棤鍏冪礌锛屾垚涓虹┖閾捐〃(澶存寚閽堝拰澶寸粨鐐逛换鐒跺瓨鍦? 40 //渚濇閲婃斁鎵€鏈夎妭鐐?锛屽苟灏嗗ご缁撶偣鎸囬拡鍩熻缃负绌?/span> 41 Status ClearList(Linklist L){ 42 Linklist p,q;//鎴朙node *p,*q; 43 p=L->next; 44 while(p){ //娌″埌琛ㄥ熬 45 q=p->next; 46 free(p); 47 p=q; 48 } 49 L->next=NULL;//澶寸粨鐐规寚閽堝煙涓虹┖ 50 return OK; 51 } 52 //姹傚崟閾捐〃鐨勮〃闀?/span> 53 int ListLength_L(Linklist L){//杩斿洖L涓暟鎹厓绱犵殑涓暟 54 Linklist p; //Lnode *p; 55 p=L->next; //P鎸囧悜绗竴涓粨鐐? 56 i=0; 57 while(p){ //閬嶅巻鍗曢摼琛紝缁熻鑺傜偣鏁? 58 i++; 59 p=p->next; 60 } 61 return i; 62 } 63 //鍙栧€?-鍙栧崟閾捐〃涓殑绗琁涓厓绱犵殑鍐呭 64 Status GetElem_L(Linklist L,int i,ElemType &e){ 65 //鑾峰彇L涓i涓厓绱犵殑鍐呭锛岄€氳繃鍙橀噺e杩斿洖 66 p=L->next;j=1;//鍒濆鍖朠鎸囧悜棣栧厓缁撶偣 67 while(p&&j<i){ //鍚戝悗鎵弿锛岀洿鍒癙鎸囧悜绗琁涓厓绱犳垨p涓虹┖鏃? 68 p=p->next;++j; 69 } 70 if(!p||j>i) return ERROR;//绗琲涓厓绱犱笉瀛樺湪 71 e=p->data; //鍙栫i涓厓绱? 72 return Ok; 73 } 74
以上是关于鍗曢摼琛ㄧ殑鍩烘湰鎿嶄綔的主要内容,如果未能解决你的问题,请参考以下文章