此基本操作的實現中使用的是靜態分配儲存結構
#include/*---------順序表的動態分配儲存結構--------*/
#define list_init_size 100 //線性表儲存空間的初始分配值
#define listincrement 10 //線性表儲存空間的分配增量
typedef int elemtype;
typedef structseqlist;
/*--------順序表的靜態分配儲存結構--------*/
#define maxsize 100 //線性表的最大長度
typedef structsqlist;
/*-------順序表上基本操作(部分)和實現---------*/
void initlist_sq(sqlist &l)
bool listinsert_sq(sqlist &l,int i,elemtype e)
bool listdelete_sq(sqlist &l,int i,elemtype e)
int locateelem(sqlist l,elemtype e)
bool printlist(sqlist l)
/*------測試-------*/
int main()
printf("順序表中現有的資料為:");
printlist(l);
//測試刪除功能
int j;
printf("輸入要刪除的元素位序:");
scanf("%d",&j);
listdelete_sq(l,j,e);
printf("順序表中現有元素為:");
printlist(l);
//測試按值查詢操作
printf("輸入要查詢的元素值:");
scanf("%d",&e);
int num = locateelem(l,e);
printf("要查詢的元素值在順序表中對應位置是:%d\n",num);
return 0;
}
測試結果
線性表順序表示
include include include define listlength 100 typedef struct datatype typedef struct initlist,list 建立並返回乙個空的線性表 list createlist void else printf out o...
順序表示的線性表 順序表
順序表具有以下特徵,邏輯上相鄰的元素,在物理上也是相鄰的,只要確定了第乙個元素的起始位置,線性表上的任一元素都可以隨機訪問因此線性表的順序儲存結構是一種隨機訪問的儲存結構 儲存結構 include listsize 100 typedef struct datatype list listsize ...
線性表的順序表示
線性表的順序表示終於馬馬虎虎的勉強寫 完了,寫的不是很完整,開始時比較不理 解就是動態分 配記憶體,現 在懂一點點了,資料結構落下很多了,這幾天要好好整了 include include includeusing namespace std define ok 1 define error 0 de...