資料結構4

2022-04-30 02:15:08 字數 779 閱讀 7996

實現getelem的具體操作,即將線性表l中的第i個位置的元素值返回。(我們只需把陣列第i-1下標的值返回即可)

#define ok 1

#define error 0

#define true 1

#define false 0

typedef int status;

//status 是函式的型別,其值是函式結果狀態**,如ok等

//初始條件,順序表l已存在,i <= i <= listlength(l)

//操作結果,用e返回l中第i個數值

status getelem(sqlist l, int i, elemtype *e)

*e = l.data[i-1];

return ok;

}

思路:

//初始條件,順序表l已存在,i <= i <= listlength(l)

//操作結果,在l中第i個元素位置插入新元素e,l長度+1

status listinsert(sqlist *l, int i, elemtype e)

if(i < 1 || i > l->length+1) //當i不在範圍內時

if(i <= l->length) //插入的資料不在表尾 }

l->data[i-1] = e; //如果在表尾直接插入

l->length++;

return ok;

}

資料結構(4)

1 允許進行插入 刪除操作的一端叫棧頂 2 表的另一端叫棧底 3 當棧中沒有資料元素時稱為空棧 4 插入叫進棧或入棧 5 刪除叫退棧或出棧 特點 後進先出 順序棧typedef struct sqstack 初始化棧 void initstack sqstack s s為棧指標,top為s所指棧的棧...

4 資料結構

4.2 線段樹 4.1 樹狀陣列 4.1.1 普通樹狀陣列 僅支援單點修改區間查詢。const int maxn 1e5 10 int tree maxn intlb int x intread int x return tot void add int num,int x 4.1.2 普通二維樹狀...

資料結構筆記(4)

棧與佇列 一 棧1.順序棧的實現 template class seqstack seqstack void push datatype x datatype pop datatype gettop int empty private datatype data stacksize int top ...