線性表的應用2(刪除順序表中的元素)

2021-07-10 23:45:05 字數 942 閱讀 9852

一、寫一演算法,從順序表中刪除自第i個元素開始的k個元素。 (按照下標刪除)

方法:迴圈控制刪除即可

**實現:

#include #include #include #define overflow -2

#define list_init_size 100 //線性表儲存空間的初始分配量

#define listincrement 10 //線性表儲存空間的分配增量

using namespace std;

typedef int elemtype;

typedef struct

seqlist;

int initlist(seqlist &l)

int listinsert(seqlist &l, int i,elemtype e)

q=&(l.elem[i-1]);

for(p=&(l.elem[l.length-1]); p>=q; --q)

*q=e;

++l.length;

return 1;

}int listdelet(seqlist &l,int i,elemtype &e)

void output(seqlist &l)

seqlist;

int initlist(seqlist &l)

int listinsert(seqlist &l, int i,elemtype e)

q=&(l.elem[i-1]);

for(p=&(l.elem[l.length-1]); p>=q; --q)

*q=e;

++l.length;

return 1;

}int listdelet(seqlist &l,int i,elemtype &e)

void output(seqlist &l)

{ for(int i=0; i

線性表 順序表的應用

一 刪除順序表中所有值為x的資料元素 要求 時間複雜度為o n 空間複雜度為o 1 若用基本運算實現 void delnode1 sqlist l,elemtype x 時間複雜度為n 2 故解法為 複製保留的元素 逐個複製要保留的元素,共用空間,不需要額外空間 void delnode1 sqli...

線性表(2) 順序表

include include define init size 100 初始長度 define listincrement 增量 define elemtype int define error 0 define ok 1 typedef structsqlist 構造空表 int initlis...

2 線性表之順序表

線性表是某類元素的乙個集合,還記錄著元素之間的一種順序關係。順序表 將元素順序地存放在一塊連續的儲存區里,元素間的順序關係由它們的儲存順序自然表示。順序表的資料元素本身連續儲存,每個元素所佔的儲存單元大小固定相同,元素的下標是其邏輯位址,而元素儲存的實體地址 實際記憶體位址 可以通過儲存區的起始位址...