線性表初始化 插入 刪除操作

2021-06-04 19:49:25 字數 958 閱讀 6838

順序表的定義:

#define list_init_size 100

#define list_increment 10

struct sqlistsqlist;

status listinit_sq(sqlist &l)  

順序表的插入操作(從新分配所有空間)

status listinsert_sq(sqlist &l,int i,elemtype elem)

pe[i]=elem;

for(int index=i;index

pe[index+1]=l.elem[index]; }

l.elem=pe;

++l.length;

l.listsize+=listincrement;

}//無需增加空間,只是搬動元素

for(int index=l.length;index>i;--index)

l.elem[i]=elem;

++l.length; }

//演算法改進:

//注意:

//線性表的位置引數i對映到順序表中對應的是下表為i-1的元素值

//在第i個元素之前插入乙個元素時,需將第n至第i個元素向後移動乙個位置

status listinsert(sqlist &l,int i,elemtype elem)

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

for(elemtype *p=l.elem+l.length;p!=q;--p)

l.elem[i]=elem;

++l.length;

}

順序表的刪除操作:

status listdelete_sq(sqlist &l,int i,elemtype &e)

--l.length;

return ok;

}

線性表的初始化

初始化就是建立乙個空線性表,那直接把長度置為0就行了 include define ok 1 define error 0 define true 1 define false 0 define maxsize 20 儲存空間初始分配量 typedef int elemtype elemtype型別...

順序表的初始化 刪除 插入

初始化線性表 include include include define list init size 100 define listincrement 10 define ok 1 define error 0 define overflow 2 struct sqlist char elem ...

順序表的初始化 插入 刪除

昨天晚上做了中移動蘇州軟體公司的暑期實習崗的筆試題,感覺備受打擊,尤其是自以為是的資料結構題 從快排 歸併排序 堆排序中選一種實現 碎決定再次學習資料結構一次,並將重要的資料結構用程式實現。這裡先實現的是順序表的初始化,插入和刪除操作。include using namespace std 線性表的...