資源描述:
《實(shí)驗(yàn)報(bào)告1線性表表達(dá)式》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、-實(shí)驗(yàn)報(bào)告(學(xué)年第學(xué)期)課程名稱(chēng)數(shù)據(jù)結(jié)構(gòu)A實(shí)驗(yàn)名稱(chēng)實(shí)驗(yàn)一線性表的基本運(yùn)算及多項(xiàng)式的算術(shù)運(yùn)算實(shí)驗(yàn)時(shí)間年月日指導(dǎo)單位指導(dǎo)教師學(xué)生姓名班級(jí)學(xué)號(hào)學(xué)院(系)專(zhuān)業(yè).---實(shí)驗(yàn)報(bào)告.---實(shí)驗(yàn)名稱(chēng)實(shí)驗(yàn)一線性表的基本運(yùn)算及多項(xiàng)式的算術(shù)運(yùn)算指導(dǎo)教師實(shí)驗(yàn)類(lèi)型驗(yàn)證實(shí)驗(yàn)學(xué)時(shí)實(shí)驗(yàn)時(shí)間一、實(shí)驗(yàn)?zāi)康暮鸵螅?)深入理解線性表數(shù)據(jù)結(jié)構(gòu),掌握線性表的順序和鏈接兩種存儲(chǔ)表示方法。(2)熟練掌握順序表的各種基本操作。(3)學(xué)會(huì)使用線性表解決應(yīng)用問(wèn)題的方法。(4)加深對(duì)抽象模板類(lèi)。類(lèi)的繼承、代碼重用、重載等C++語(yǔ)言機(jī)制的理解和使用。二、實(shí)驗(yàn)環(huán)境(實(shí)驗(yàn)設(shè)備)硬件:微型計(jì)算機(jī)軟件:MicrosoftVisualC
2、++6.0三、實(shí)驗(yàn)原理及內(nèi)容實(shí)驗(yàn)題一:線性表操作(1)在順序表類(lèi)SeqList中增加成員函數(shù)voidReverse(),實(shí)現(xiàn)順序表的逆置。(2)在順序表類(lèi)SeqList中增加成員函數(shù)boolDeleteX(constT&x),刪除表中所有元素值等于x的元素。若表中存在這樣的元素則刪除之,且函數(shù)返回true;否則函數(shù)返回false。(3)編寫(xiě)main函數(shù),調(diào)用上述函數(shù)測(cè)試其功能。源代碼:實(shí)驗(yàn)報(bào)告.---#includetemplateclassLinearList{public:virtualboolIsEmpty()const=0;
3、virtualintLength()const=0;virtualboolFind(inti,T&X)const=0;virtualintSearch(Tx)const=0;virtualboolInsert(inti,Tx)=0;virtualboolDelete(inti)=0;virtualboolUpdate(inti,Tx)=0;virtualvoidOutput(ostream&out)const=0;virtualvoidReverse()=0;virtualboolDeleteX(constT&x)=0;protected:intn;};template<
4、classT>classSeqlist:publicLinearList{public:Seqlist(intmSize);~Seqlist(){delete[]elements;}boolIsEmpty()const;intLength()const;boolFind(inti,T&X)const;intSearch(Tx)const;boolInsert(inti,Tx);boolDelete(inti);boolUpdate(inti,Tx);voidOutput(ostream&out)const;實(shí)驗(yàn)報(bào)告.---voidReverse();boolDele
5、teX(constT&x);private:intmaxLength;T*elements;};templateSeqlist::Seqlist(intmSize){maxLength=mSize;elements=newT[maxLength];n=0;}templateboolSeqlist::IsEmpty()const{returnn==0;}templateintSeqlist::Length()const{returnn;}templateboolSeqlist::Find
6、(inti,T&x)const{if(i<0
7、
8、i>n-1){cout<<"OutofBounds"<intSeqlist::Search(Tx)const{for(intj=0;jboolSeqlist::Insert(inti,Tx){if(i<-1
9、
10、i>n-1){cout<<"OutofBounds"
11、<i;j--)elements[j+1]=elements[j];elements[i+1]=x;n++;returntrue;}templateboolSeqlist::Delete(inti){if(!n){cout<<"UnderFlow"<12、
13、i>n-1){cout<<"Out