c++ list 修改_C/C++编程笔记:数据结构系列——顺序表的实现,内含源码
一、原理
1.定義
順序表是在計算機中以數組形式保存的。
2.特點
在計算機中占用連續的一段內存
一旦聲明,空間大小一般不變
二、初始化相關操作
包括:
(1)結構體的定義
(2)順序表的創建
(3)順序表清空
(4)判斷順序表是否為空
1.結構體定義
即定一個滿足順序表定義的結構體,其中包含 數組、存儲長度、總長度。
2.初始化
對順序表進行初始化,包括分配自定義長度的數組空間,設定存儲長度為0,存儲長度為規定值
3.清空
將順序表內容清空,用于某些題目要求或節省空間
4. 判斷是否為空
判斷順序表是否為空,在某些操作之前,先要判斷順序表是否為空,防止出錯
intisEmpty(struct List *L){returnL->length==0?1:0;//順序表最大長度為0則為空返回1,否則返回0}
三、增加相關操作
包括:
(1)向表頭插入元素x
(2)向表尾插入元素x
(3)向第n個位置插入元素x
(4)向遞增的線性表中插入元素x,之后仍然保持有序
進行操作之前,還需要一個方法,當插入元素超過數組長度時,將數組容量擴大,即重新申請空間
Tip:將順序表擴大一倍空間
1.向表頭插入元素x
2.向表尾插入元素x
3.向線性表L的第n個位置插入元素x
四、刪除相關操作
包括:
(1)刪除表頭元素并返回被刪除的值
(2)第n個元素并返回被刪除元素
(3)從線性表L中刪除值為X的第一個元素
1.刪除表頭元素并返回被刪除的值
刪除表頭第一個元素,長度減少1,返回被刪除的值
2.刪除第n個元素并返回被刪除元素
3.從線性表L中刪除值為X的第一個元素
從線性表L中刪除值為X的第一個元素,若刪除成功則返回1,否則返回0
五、修改相關操作
包括:把線性表中第n個元素修改為x
1.把線性表中第n個元素修改為x
把線性表中第n個元素修改為x,若成功則返回1,失敗返回0
六、查找相關操作
包括:
(1)查找第n個位置的值
(2)順序遍歷輸出所有值
(3)返回值等于x的下標
1.查找第n個位置的值
輸入要查找的坐標,若合法則范圍對應的值,若非法則提示并推出
2.順序遍歷輸出所有值
輸出順序表中的所有值
3.查找值為x的節點并返回其坐標
輸入要查找的值x,若存在則范圍首次出現的下標,否則返回0
voidfindElem(struct List *L,ElemType x){inti;for(i=0;ilength;i++){if(L->list[i]==x){returni;}}}
七、總結
1.優點
查找方便
空間利用率高
2.缺點
刪除和增加操作效率低
空間固定,不易擴展
八、完整代碼
學習C/C++編程知識,想要成為一個更加優秀的程序員,或者你學習C/C++的時候有難度,可以來筆者的C語言C++零基礎編程學習圈,里面有學習視頻和文件資料,還有更多志同道合的朋友,歡迎轉行也學習編程的伙伴,和大家一起交流成長會比自己琢磨更快哦!
學習C/C++編程知識,歡迎關注筆者學習專欄一起成長:
C/C++編程學習聚集地?zhuanlan.zhihu.com總結
以上是生活随笔為你收集整理的c++ list 修改_C/C++编程笔记:数据结构系列——顺序表的实现,内含源码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电机编码器调零步骤_编码器原理、霍尔应用
- 下一篇: 十进制转十六进制c语言_蓝桥杯十六进制转