第三週專案4 順序表應用(1)

2021-07-22 19:52:22 字數 2608 閱讀 4357

問題及描述:

/*

* 檔名稱:cube007.cpp

* 作 者:劉小楠

* 完成日期:2023年9月18日

* * 問題描述:刪除元素在[x, y]之間的所有元素,要求演算法的時間複雜度為o(n),空間複雜度為o(1);

* 輸入描述:無

* 輸出描述:結果

*/

list.h

#ifndef list_h_included

#define list_h_included

#define maxsize 100

typedef int elemtype; //自定義資料型別

typedef struct list

sqlist;

void createlist(sqlist *&l,elemtype a,int n); //由a中的n個元素建立順序表

void displist(sqlist *l); //輸出線性表

int listlength(sqlist *l); //求順序表長度

bool getelem(sqlist *l,int i,elemtype &e); //求順序表中某個資料元素值

bool listinsert(sqlist *&l,int i,elemtype e); //插入資料元素

void initlist(sqlist *&l); //初始化線性表

void unionlist(sqlist *la,sqlist *lb,sqlist *&lc); //求兩集合並集

bool del(sqlist *&l,int x,int y); //刪除指定區間內元素

#endif // list_h_included

lxn.cpp

#include #include #include "list.h"

void createlist(sqlist *&l,elemtype a,int n) //由a中的n個元素建立順序表

void displist(sqlist *l) //輸出線性表

int listlength(sqlist *l) //求順序表長度

bool getelem(sqlist *l,int i,elemtype &e) //求順序表中某個資料元素值

int locateelem(sqlist *l,elemtype e) //按元素值查詢順序表中元素

bool listinsert(sqlist *&l,int i,elemtype e) //插入資料元素

bool listdelete(sqlist *&l,int i,elemtype &e) //刪除資料元素

void initlist(sqlist *&l) //初始化線性表

void destroylist(sqlist *&l) //銷毀順序表

void unionlist(sqlist *la,sqlist *lb,sqlist *&lc) //求兩集合並集

lalength=listlength(la); //求線性表la的長度

for (i=1; i<=listlength(lb); i++)

}bool del(sqlist *&l,int x,int y) //刪除指定區間內元素

l->length-=(j+1);

if(l->length<=0)

printf("該線性表已為空\n");

return true;

}

main.cpp

#include #include #include "list.h"

int main()

{ elemtype a[maxsize];

sqlist *l;

int i,x,y;

int llength;

printf("請輸入線性表l的長度:\n");

scanf("%d",&llength);

printf("請輸入線性表l中各元素:\n");

for(i=0;i程式截圖:

知識點總結:

順序表的基本運算的運用

心得體會:

通過此專案,對演算法的分析能力和演算法庫的呼叫能力有所提公升,能夠在複雜度要求下設計更高效的演算法。

第三週。專案4 順序表應用(1)

檔名稱 專案4 順序表應用 1 cpp 作 者 魏樂天 完成日期 2015年10月12日 版 本 號 v1.0 問題描述 定義乙個採用順序結構儲存的線性表,設計演算法完成下面的工作 1 刪除元素在 x,y 之間的所有元素,要求演算法的時間複雜度為o n 空間複雜度為o 1 輸入描述 若干資料 程式輸...

第三週專案4 順序表應用(1)

問題及 檔名稱 111.cpp 作 者 李曉鈺 完成日期 2016年9月17日 版 本 號 v1.0 問題描述 刪除元素在 x,y 之間的所有元素,要求演算法的時間複雜度為o n 空間複雜度為o 1 輸入描述 無 程式輸出 輸出調整後的線性表 標頭檔案list.h ifndef list h inc...

第三週專案4 順序表應用(1)

問題 檔名稱 專案4.cbp 作 者 秦緒龍 完成日期 2016年9月18日 版 本 號 v1.0 問題描述 刪除元素在 x,y 之間的所有元素,要求演算法的時間複雜度為o n 空間複雜度為o 1 輸入描述 無 程式輸出 輸出調整後的線性表 標頭檔案list.h ifndef list h incl...