線性表示資料結構中較為重要的乙個結構,實現增刪查改,主要參考嚴版的資料結構,以下為**部分
//#include "stdafx.h"
#include #include #include using namespace std;
#define list_init_size 100 //init size
#define listincerment 10 //increment
//----動態分配順序儲存結構---
typedef structsqlist;
//---實現插入操作---
sqlist initlist_sq(sqlist &la,int i, int e)
int* q;//q為插入位置
int* p;//p為往後移元素位置
q = &(la.elem[i - 1]);
for (p = &la.elem[la.length - 1]; p >= q;--p)//p為最後的元素
*(p+1)=*p;//元素後移,插入一次,後移一次
*q = e;
++la.length;
return la;
}//---實現刪除操作---
sqlist delelist_sq(sqlist &la, int i, int &e)
//---實現查詢操作
int locateelem_sq(sqlist l, int e)
if (i <= l.length)
return i;
else
return 0;
}//---實現兩個鍊錶合併操作
sqlist mergelist_sq(sqlist la, sqlist lb, sqlist &lc)
while (pa < pa_last)//插入剩餘的la元素
while (pb < pb_last)//插入剩餘的lb元素
return lc;
}int _tmain(int argc, _tchar* argv)
實現線性表的遍歷查詢插入刪除合併
資料結構 書上給的 僅僅是 在某個特定的位置 插入 某乙個元素。那樣不是 線性表的要求。申請動態記憶體空間神馬的 真費勁,不熟練。include include include include include include include include include include inclu...
線性表的插入刪除查詢
建立動態陣列,分成兩部分 資料elem和線性表的長度length,elem與initsize為資料的 typedef structsqlist 初始化 1.給動態陣列分配空間 2.線性表清空length 0 void initlist sq sqlist l 顯示 void show sqlist ...
線性表順序儲存的建立,查詢,插入,刪除
1 typedef struct lnode list23 struct lnode 1011 struct lnode l 1213 list ptrl 訪問下標為i的元素 l.data i 或者ptrl data i 線性表的長度 l.last 1或者ptrl last 1 1.初始化 建立空的...