順序表的基本操作

2021-08-28 08:55:32 字數 2246 閱讀 3346

#includeusing namespace std;

//#define maxsize 10; 使用define的時候後面沒有 ;

//#define elemtype elemtype ;

//資料型別修改別名的時候用typedef 並且是定義陣列型別成新的別名 elemtype ->newtype

#define maxsize 10

#define overflow -1

#define ok 1

#define error -2

typedef int elemtype;

/*typedef struct

sqlist;書上用陣列來儲存沒寫完全 先用的網上別人的方法 */

typedef struct

sqlist;

elemtype initsqlst(sqlist &l); //構造乙個空的順序表

void printtypesqlist(sqlist l); //將整個順序表列印出來

elemtype insertsqlist(sqlist &l, elemtype n,elemtype num ); //在第n個位置 插入數num

elemtype deletesqlist(sqlist &l, elemtype n); //刪除的時候只需要把後面乙個覆蓋到前面的乙個即可

elemtype findvalueposition(sqlist &l , elemtype value); //查詢value所在的位置

//已知乙個順序表l,其中元素有序排列,插入乙個數字,使得l仍然是有序排列。

elemtype findandinsert(sqlist& l,elemtype value);

elemtype initsqlst(sqlist &l) //構造乙個空的順序表

void printtypesqlist(sqlist l)

l.elem[n-1] = num;

l.length++;

return ok;

}elemtype deletesqlist(sqlist &l, elemtype n) //刪除的時候只需要把後面乙個覆蓋到前面的乙個即可

l.length--;

return ok;

}elemtype findvalueposition(sqlist &l , elemtype value)

exit(error);

}elemtype findandinsert(sqlist& l,elemtype value)

//2 insert elemtype into the position

for(elemtype j = l.length - 1 ;j >= markposition;j--)

l.elem[j+1] = l.elem[j];

l.elem[markposition] = value;

l.length++;

return ok; }

void main()

sqlist

elemtype status1 = initsqlst(l);

//l sqlist

//為什麼這兩者不一樣呢?

elemtype status2 = insertsqlist(l, 1,1 );

for (elemtype n = 2;n <10; n ++)

status2 = insertsqlist(l, 10,10 );

cout<<"l順序表的長度:"<遇到的問題:

1.//#define maxsize 10;  使用define的時候後面沒有 ;

2.//#define elemtype int ;  資料型別修改別名的時候用typedef 並且是定義陣列型別成新的別名 int ->newtype

3.//必須是可以修改的左值 -> "=" 和 "=="的問題

總是把 == 寫成 =導致很多莫名其妙的小錯誤...

4.下標要求陣列或指標型別  //使用下標的時候必須是陣列或者指標!

5.定義和初始化的問題!

定義了代表系統給分配了記憶體和一些值

但是要自己去初始化,否則會產生一些問題...(還不知道啥問題)

6.//cout<<"順序表l首位址l.elem[0]:"<<&(l.elem[0])《從順序表考慮 : 減一 並且 使用小於等於 大於等於

從第幾個數考慮 :不減一 並且直接使用大於小於

8.定義和初始化的問題。陣列和指標。

順序表的基本操作 順序表基本操作上機實驗

理解線性結構的基本概念,掌握兩種基本的儲存結構 順序儲存結構 順序表 和鏈式儲存結構 單鏈表 用c語言實現在兩種儲存結構上的對應操作 包括建立 刪除插入元素 遍歷等 鞏固強化c程式設計的基本方法和能力。完成順序表的建立 元素刪除 遍歷等操作,具體內容如下 有序的一組整數 1,2,3,4,6 設計順序...

靜態順序表順序表的基本操作

一般採用陣列表示順序表,陣列有靜態陣列和動態陣列之分,在此我們採用靜態陣列表示靜態順序表,如圖為線性表的結構 下面實現順序表的基本操作 初始化 銷毀 尾插 頭插 尾刪 頭刪 根據指定元素刪除 指定位置插入和刪除 查詢 靜態順序表的結構定義 define maxsize 100 typedef int...

順序表的基本操作

include include include define error 1 define ok 1 typedef int status typedef int lelemtype typedef struct lnode lnode,linklist status creatlinklist l...