最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C/C++編程筆記:數(shù)據(jù)結(jié)構(gòu)系列——順序表的實現(xiàn),內(nèi)含源碼

2020-04-07 23:41 作者:C語言編程__Plus  | 我要投稿


一、原理

1.定義

順序表是在計算機中以數(shù)組形式保存的。

2.特點

在計算機中占用連續(xù)的一段內(nèi)存

一旦聲明,空間大小一般不變

二、初始化相關(guān)操作

包括:

(1)結(jié)構(gòu)體的定義

(2)順序表的創(chuàng)建

(3)順序表清空

(4)判斷順序表是否為空

1.結(jié)構(gòu)體定義

即定一個滿足順序表定義的結(jié)構(gòu)體,其中包含 數(shù)組、存儲長度、總長度。

2.初始化

對順序表進行初始化,包括分配自定義長度的數(shù)組空間,設(shè)定存儲長度為0,存儲長度為規(guī)定值

3.清空

將順序表內(nèi)容清空,用于某些題目要求或節(jié)省空間

4. 判斷是否為空

判斷順序表是否為空,在某些操作之前,先要判斷順序表是否為空,防止出錯

intisEmpty(struct List *L){returnL->length==0?1:0;//順序表最大長度為0則為空返回1,否則返回0}

三、增加相關(guān)操作

包括:

(1)向表頭插入元素x

(2)向表尾插入元素x

(3)向第n個位置插入元素x

(4)向遞增的線性表中插入元素x,之后仍然保持有序

進行操作之前,還需要一個方法,當(dāng)插入元素超過數(shù)組長度時,將數(shù)組容量擴大,即重新申請空間

Tip:將順序表擴大一倍空間

1.向表頭插入元素x

2.向表尾插入元素x

3.向線性表L的第n個位置插入元素x

四、刪除相關(guān)操作

包括:

(1)刪除表頭元素并返回被刪除的值

(2)第n個元素并返回被刪除元素

(3)從線性表L中刪除值為X的第一個元素

1.刪除表頭元素并返回被刪除的值

刪除表頭第一個元素,長度減少1,返回被刪除的值

2.刪除第n個元素并返回被刪除元素

3.從線性表L中刪除值為X的第一個元素

從線性表L中刪除值為X的第一個元素,若刪除成功則返回1,否則返回0


五、修改相關(guān)操作

包括:把線性表中第n個元素修改為x

1.把線性表中第n個元素修改為x

把線性表中第n個元素修改為x,若成功則返回1,失敗返回0


六、查找相關(guān)操作

包括:

(1)查找第n個位置的值

(2)順序遍歷輸出所有值

(3)返回值等于x的下標

1.查找第n個位置的值

輸入要查找的坐標,若合法則范圍對應(yīng)的值,若非法則提示并推出


2.順序遍歷輸出所有值

輸出順序表中的所有值


3.查找值為x的節(jié)點并返回其坐標

輸入要查找的值x,若存在則范圍首次出現(xiàn)的下標,否則返回0

voidfindElem(struct List *L,ElemType x){inti;for(i=0;ilength;i++){if(L->list[i]==x){returni;}}}

七、總結(jié)

1.優(yōu)點

查找方便

空間利用率高

2.缺點

刪除和增加操作效率低

空間固定,不易擴展

八、完整代碼

希望對你有幫助~

學(xué)習(xí)C/C++編程知識,歡迎關(guān)注UP一起成長~


C/C++編程筆記:數(shù)據(jù)結(jié)構(gòu)系列——順序表的實現(xiàn),內(nèi)含源碼的評論 (共 條)

分享到微博請遵守國家法律
金溪县| 大冶市| 金堂县| 镇江市| 富源县| 余干县| 泸溪县| 军事| 凤翔县| 淮北市| 乌拉特中旗| 墨竹工卡县| 松桃| 定边县| 淳化县| 长宁县| 韶关市| 沈丘县| 改则县| 正镶白旗| 石嘴山市| 潼关县| 称多县| 长春市| 张北县| 滨州市| 衡东县| 师宗县| 昌宁县| 库伦旗| 施秉县| 四平市| 岳阳市| 龙南县| 三都| 浦县| 孟津县| 新泰市| 若尔盖县| 望城县| 阳春市|