線性表的基本運算

2021-08-04 16:00:11 字數 2449 閱讀 1122

資料結構用c++實現第一章節原始碼:

實現順序表和單鏈表的基本運算,多項式的加法和乘法算術運算。

要求:能夠正確演示線性表的查詢、插入、刪除運算。實現多項式的加法和乘法運算操作

實現順序表和單鏈表的基本運算

linearlist.h:

#include "iostream.h"

template class linearlist

;

node.h:

#include "iostream.h"

template t>

class

node

;

seqlist.h:

#include "linearlist.h"

template

class seqlist:public linearlist;

template

seqlist::seqlist(int msize)

template

seqlist::~seqlist()

template

bool seqlist::find(int i,t &x)

else

else

}}template

int seqlist::search(t x)

return -1;

}template

bool seqlist::insert(int i,t x)

if(n==maxlength)

elements[i]=x;

n++;

return

true;

}template

bool seqlist::delete(int i)

if(!n)

n--;

return

true;

}

singellist:

#include "linearlist.h"

#include "node.h"

template

class singellist:public linearlist;

template

singellist::singellist()

template

singellist::~singellist()

}template

bool singellist::find(int i,t &x)

node*p=first;

for(int j=0;j1;j++)

return

true;

}template

int singellist::search(t x)

if(p)

return -1;

}template

bool singellist::insert(int i,t x)

node*q=new node;

q->element=x;

node*p=first;

for(int j=0;jlink;

}if(i!=-1)

else

n++;

return

true;

}template

bool singellist::delete(int i)

if(!n)

node*p=first;

for(int j=0;j1;j++)

if(i!=0)

else

delete p;

n--;

return

true;

}

main.cpp:

#include "iostream.h"

#include "seqlist.h"

void main()

cout

<<"please input i & x"

>i>>x;

cout

<<"se1.find(i,x): "

<<"here end ok."

<多項式的實驗部分給了我很大的阻礙,最大的原因在於我在寫程式之前沒有預演演算法實現,而是拿到就寫固然除了大問題以至於除錯程式花了非常長的時間。 除錯過程中也發現自己有很多程式設計細節做得不夠好,野指標的問題最為明顯,其他的問題列如,過載運算子要包含標頭檔案cstring,類外實現函式形式是返回值 類名::函式(…),函式定義時有template的例項化的時候要標明資料型別,例項化指向類物件的指標時要在一開始就賦值,ostream和istream的區別,this指標的使用,const引數的匹配問題……

順序表的基本運算 線性表

c語言實現順序表的插入 刪除 查詢運算 1 2 實現順序表的插入 刪除 查詢運算3 45 include 6 include 7 include 89 define maxsize 20 10 typedef int elemtype 1112 typedef struct seqlist 13 s...

Problem D 鍊錶的基本運算(線性表)

time limit 1 sec memory limit 128 mb submit 18 solved 10 編寫乙個程式,實現鍊錶的各種基本運算 假設順序表的元素型別為char 主函式已給出,請補充每一種方法。1 初始化單鏈表l 2 採用尾插法依次插入元素a,b,c,d,e 3 輸出單鏈表l ...

Problem D 鍊錶的基本運算(線性表)

time limit 1 sec memory limit 128 mb submit 19 solved 11 submit status web board 編寫乙個程式,實現鍊錶的各種基本運算 假設順序表的元素型別為char 主函式已給出,請補充每一種方法。1 初始化單鏈表l 2 採用尾插法依...