課程
/后端開發(fā)
/C++
/數(shù)據(jù)結(jié)構(gòu)探險(xiǎn)之線性表篇
rt,謝謝!
2016-06-29
源自:數(shù)據(jù)結(jié)構(gòu)探險(xiǎn)之線性表篇 2-1
正在回答
/* 線性表-數(shù)組實(shí)現(xiàn): Author:Deny 于?2016.6.29 */ #include?<cstdio> #include?<iostream> #include?<cstring> #define?Print()?cout?<<?"id?out?of?bounds!"?<<?endl; #define?Size?10005 using?namespace?std; class?list{ private: int?tail,Arr[Size]; public: void?clear(){?tail?=?0;?memset(Arr,0,sizeof(Arr));?} bool?isEmpty(){?return?tail?==?0;?} int?size(){?return?tail;?} int?getElement(int?id){?return?Arr[id];?} int?FindElement(int?x){ for(int?i?=?0;?i?<?tail;?i++)?if(Arr[i]?==?x)?return?i; return?-1; } void?Insert(int?id,int?x){ if(id?>?tail){?Print();?return?;?} for(int?i?=?tail;?i?>?id;?i--)?Arr[i]?=?Arr[i-1]; Arr[id]?=?x;?tail++; } void?Delete(int?id){ if(id?>=?tail){?Print();?return?;?} for(int?i?=?id+1;?i?<?tail;?i++)?Arr[i-1]?=?Arr[i]; tail--; } void?Tra(){ if(!tail){?cout?<<?"The?link?is?empty!"?<<?endl;?return?;?}? for(int?i?=?0;?i?<?tail;?i++)?cout?<<?Arr[i]?<<?"?"; cout?<<?endl; } list(){?tail?=?0;?memset(Arr,0,sizeof(Arr));?} }; //order?=?-1?時(shí)退出,order?=?1?時(shí)清空線性表,order?=?2時(shí)判斷線性表是否為空 //order?=?3?時(shí)輸出線性表的長(zhǎng)度?,order?=?4時(shí)還需輸入?id?輸出?Arr[id]? //order?=?5?時(shí)還需輸出?num?判斷?num?是否在?Arr[]?數(shù)組中,order?=?6?時(shí)還需輸入?id?和?num,把?num?插入?到?id?位 //order?=?7?時(shí)還需輸出?id?刪除?Arr[id],?order?=?8時(shí)遍歷?Arr[]? int?main(){ int?order; list?k;? cout?<<?"Input?order:"; while(cin?>>?order){ if(order?==?-1)?break; else?if(order?==?1)?k.clear(); else?if(order?==?2){? k.isEmpty()?cout?<<?"The?link?is?empty."?<<?endl:cout?<<?"The?link?isn't?empty."?<<?endl; } else?if(order?==?3)?cout?<<?k.size()?<<?endl; else?if(order?==?4){?int?x;?cin?>>?x;?cout?<<?k.getElement(x)?<<?endl;?} else?if(order?==?5){? int?num,q;? cin?>>?num;?q?=?k.FindElement(num);? q?==?-1?cout?<<?"Not?Found!"?<<?endl:cout?<<?"It's?in?id?"?<<?q?<<?"?."?<<?endl;? }else?if(order?==?6){?int?id,num;?cin?>>?id?>>?num; k.Insert(id,num);?} else?if(order?==?7){?int?id;?cin?>>?id;?k.Delete(id);?} else?if(order?==?8){?k.Tra();?} else?cout?<<?"Input?error!"?<<?endl; cout?<<?"Input?order:";? } return?0; }
deny 提問者
舉報(bào)
線性表的主體順序表和鏈表,讓學(xué)員能夠?qū)⒅R(shí)融會(huì)貫通學(xué)以致用
1 回答關(guān)于線性表的計(jì)數(shù)問題
1 回答線性表-雙鏈表
2 回答c語言線性表。。
1 回答線性表的插入運(yùn)算
2 回答為什么我在線性表中,運(yùn)行會(huì)出現(xiàn)程序崩潰,,,
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-06-29