順序表的使用

2021-08-19 22:21:39 字數 2839 閱讀 1299

幫助學生熟練掌握順序表的建立及基本操作

問題描述:設計乙個順序表並實現對其進行基本操作。

基本要求:建立乙個順序表:

(1)輸入資料;

(2)實現資料的插入、刪除、搜尋、輸出等基本操作;

(3)實現集合的並、交和兩個有序順序表的合併。

#include 

#include

using

namespace

std;

const

int size=100;

template

class seqlist //析構函式

int size() const //表的最大容量

int length() const //計算表的長度

bool isempty() //判斷表空

bool isfull() //判斷表滿

int search1(t &x)const; //搜尋指定值,返回表項值

int search(t &x)const; //搜尋指定值,返回表項值

int locate(int i)const; //定位第i個表項

bool getdata(int i,t &x)const; //取出第i個表項

bool setdata(int i,t &x); //修改第i個表項

bool insert(int i,t &x); //在第i個表項後插入值

bool remove(int i); //刪除第i個表項

void sort(); //排序

void input(); //輸入

void output(); //輸出

void use(int size) //呼叫resize函式

void union(seqlist l); //實現兩個集合的並集

void intersection(seqlistl); //實現兩個集合的交集

void union1(seqlist l); //實現有序表的合併

void delete1(t &x);

};template

seqlist::seqlist(int sz)

}}template

seqlist::seqlist(const seqlist&s)

for(int i=1;i<=last+1;i++)

}template

seqlist&seqlist::operator=(seqlist&s)

for(int i=1;i<=last+1;i++)

return (*this);

}template

int seqlist::search1(t&x)const

}cout

<" is not found"

}template

int seqlist::search(t&x)const

}return -1;

}template

int seqlist::locate(int i)const

template

void seqlist::delete1(t &x)

}for(int z=j;z<=last;z++)

last--;

}template

bool seqlist::getdata(int i,t &x)const

return

false;

}template

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

return

false;

}template

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

data[i]=x;

last++;

return

true;

}template

bool seqlist::remove(int i)

last--;

return

true;

}template

void seqlist::input()

for(int j=0;j<=last;j++)

}template

void seqlist::output() }}

}template

void seqlist::resize(int size)

int j=last+1;

t *a=data;

t *b=newarray;

while(j--)

delete data;

data=newarray;

maxsize=size;

}}template

void seqlist::union(seqlistl)

}cout

<<"a union b is";

l.output();

}template

void seqlist::intersection(seqlist l)

else i++;

}cout

<<"a cross b is";

l.output();

}template

void seqlist::union1(seqlistl)

}cout

<<"a union b in sequence is";

this->output();

}int main()

C 實現順序表的使用

include using namespace std template class seqlist seqlist int length 32 構造空表 seqlist int length,int x 構造順序表 seqlist int values,int n 構造順序表 由values提供元...

順序表 有序順序表的插入

本題要求實現遞增順序表的有序插入函式。l是乙個遞增的有序順序表,函式status listinsert sortedsq sqlist l,elemtype e 用於向順序表中按遞增的順序插入乙個資料。比如 原資料有 2 5,要插入乙個元素3,那麼插入後順序表為2 3 5。要考慮擴容的問題。stat...

順序表 順序表定位

這兩個題本質一模一樣,唯一不同的是本題利用 順序表 將陣列a包裝了起來。在遍歷的過程中,拿順序表的資料去和x比對,若相同,返回當前下標值,若到了最後乙個資料元素都不相同,就返回 1 1.遍歷順序表 2.挨個比對資料元素 prism lang c include const int max 20 設定...