数据结构-第二章(1)-线性结构
數(shù)據(jù)結(jié)構(gòu)
數(shù)據(jù)結(jié)構(gòu)-第一章
數(shù)據(jù)結(jié)構(gòu)-第二章(1)-線性結(jié)構(gòu)
- 數(shù)據(jù)結(jié)構(gòu)
- 前言
- 一、線性表
- 1.1 線性表的定義和特點
- 1.2 線性表案例
- 1.3 線性表的類型定義
- 總結(jié)
前言
一、線性表
1.1 線性表的定義和特點
線性表(Liner List):由n(n>=0)個數(shù)據(jù)元素(節(jié)點)a1,a2,a3…an組成的有限序列。
其中數(shù)據(jù)元素的個數(shù)n定義為表的長度
當n=0時稱為空表
將非空的線性表(n>0)記住:(a1,a2,…an)
這里的數(shù)據(jù)元素ai(1<=i<=n)只是一個抽象符合,其具體含義在不同的情況下可以不同
-
例1:分析由26個英文字母組成的英文表
{A,B,C,D…Z}
數(shù)據(jù)元素都是字母;元素間關系是線性 -
例2:分析學生情況登記表
學號、姓名、性別、年齡、班級,一個數(shù)據(jù)元素就是一個學生的記錄。若干個學生的關系就是一個線性關系
從上面例子可德馳=出線性表的邏輯特征: -
①線性表的第一個元素稱為:線性起點
②線性表的最后一個元素稱為:線性終點
③下標代表的是元素的序號,表示元素在表中的位置
④對于非空的線性表,有且只有一個開始節(jié)點a1,它有唯一的后繼但沒有直接前驅(qū)a2。
⑤對于非空線性表,其有且僅有一個終端結(jié)點an,它沒有直接后繼,而僅有一個直接前驅(qū)an-1
⑥對于非空線性表,其余內(nèi)部結(jié)點ai(2<=i<=n-1)都有且僅有一個直接前驅(qū)ai-1和一個直接后繼ai+i。
線性表示一種典型的線性結(jié)構(gòu),且同一線性表中的元素必定具有相同特性,數(shù)據(jù)元素間的關系是線性關系。
1.2 線性表案例
例1:一元多項式的運算:實現(xiàn)兩個多項式加,減,乘運算
線性表P={P0,P1,P2,…,Pn}
(每一項的指數(shù)i隱含在其系數(shù)pi的序號中)
用數(shù)組來表示:
| 系數(shù)p[i] | 10 | 5 | -4 | 3 | 2 |
只需要把兩個多項式當中的元素,下標為xx的元素與常系數(shù)相加接口。
例2:圖書信息管理系統(tǒng)
- 功能需求:
1、查詢
2、插入
3、刪除
4、修改
5、排序
6、計數(shù)
圖書表抽象為線性表
表中每本圖書抽象線性表中的數(shù)據(jù)元素
- 使用數(shù)組存儲
- 使用鏈表存儲
兩種結(jié)構(gòu)對比:
線性表中數(shù)據(jù)元素的類型可以為簡單類型,也可以為復雜類型。
許多實際應用問題所涉及的基本操作有很大相似性,不應為每個具體應用單獨編寫一個程序。
從具體應用中抽象出共性的 邏輯結(jié)構(gòu)和基本操作(抽象數(shù)據(jù)類型),然后實現(xiàn)其存儲結(jié)構(gòu)和基本操作。
1.3 線性表的類型定義
- 基本操作含義
總結(jié)
期待大家和我交流,留言或者私信,一起學習,一起進步!
總結(jié)
以上是生活随笔為你收集整理的数据结构-第二章(1)-线性结构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MATLAB 人脸识别矩阵(矩阵、相似度
- 下一篇: MATLAB车牌识别系统