2024.9.18

xxc666發表於2024-09-19

線性表的順序儲存結構
用一組連續的儲存單元依次儲存線性表的資料元素。
特點:線性表的順序儲存是一種隨機存取的儲存結構。
隨機存取:即讀寫儲存的訊息的時間與儲存的位置無關

define MAXSIZE 100

typedef struct{
ElemType elem;//儲存空間的基地址
int MAXSIZE//容量
int length;//當前長度
}SqList
初始化:
Status InitList_Sq(SqList &L){
//構造一個空順序表L
L.elem=(int
)malloc(MAXSIZE*sizeof(int));//分配int型別指標陣列空間,成功返回首地址,失敗返回NULL
if(!L.elem) exit(-1)//exit除0外的其它值為異常退出
L.length=0;
return Ok;//#define OK 1
插入:
Status ListInsert_Sq(SqList &L,int i,ElemType e)
//在順序表第i個元素前插入e
//透過插入函式建立順序表
if(i<1||i>L.length+1) return ERROR;
if(L.length==MAXSIZE) return ERROR;
for(j=L.length-1;j>=i-1;j--)
L.elem[j+1]=L.elem[j];//i之後元素後移
L.elem(i-1)=e;//插入e
++L.length;
return Ok;
}

相關文章