基本資料結構
基本定**釋
資料結構
資料結構分為線性結構和非線性結構,其中線性表是典型的線性結構。
儲存結構
對計算機資料儲存的結構描述,一般分為線性結構和非線性結構。
訪問結構
在乙個資料結構上對查詢操作的時間效能的一種描述,一般有隨機儲存結構和順序儲存結構。
隨機儲存結構
乙個資料結構上進行查詢的效能為o(1),即查詢任意元素的時間複雜度為1。(如順序表等)
順序儲存結構
乙個資料結構上進行查詢的時間效能為o(n)。(如單鏈表等)
鍊錶煉表是乙個動態結構,不需要提前分配記憶體。
線性表線性表是乙個靜態的結構,需要提前分配對應的儲存空間,分配之後就不能修改,從邏輯上定義元素是一對一關係。
順序表順序表是使用陣列的方式對線性表的實現,在記憶體中是連續的空間,一旦分配,無法更改。
鍊錶煉表是使用指標的方式實現線性表,在記憶體中可以連續也可以不連續。
鍊錶節點構成
指標域(用於存放指標l->next在左邊時為指標域)、資料域(用於存放資料的)。
鍊錶指標
對應資料的指標位址( l->next在右邊時為指標)。
鍊錶指標域
存放對應指標的區域。
線性表和鍊錶的選擇
首相考慮資料的儲存密度線性線性表為1,鍊錶小於1,順序表的訪問速度快,鍊錶的儲存刪除速度快。
線性表和鍊錶的重點知識
初始化、查詢、插入、刪除、遍歷、逆置、合併、分解等操作。
雙鏈表刪除p指標操作順序
p->next->prev=p->prev;p->prev->next=p->next;free(p);
在非空 雙鏈表q後插入節點p
rlink(p)<-rlink(q);rlink(q)<-p;llink(p)<-q;llink(rlink(p))<-p;其中rlink(p):p的後繼;llink(p):p的前驅。
棧線性表的一種,但是其運算受限。只能在棧頂插入或者刪除元素。並且有著先進後出的特點。
佇列線性表的一種,但其運算受限,只能在隊頭刪除元素,隊尾插入元素。並且有著先進先出的特點。
樹資料結構的一種,非線性結構。樹是由乙個集合以及在該集合上定義的一種關係構成的。集合中的元素稱為樹的結點,所定義的關係稱為父子關係。父子關係在樹的結點之間建立了乙個層次結構。在這種層次結構中有乙個結點具有特殊的地位,這個結點稱為該樹的根結點,或稱為樹根。
二叉樹樹的一種特殊結構,每個節點最多隻包含兩個兒子節點。
opencv基本資料結構
iplimage 首先介紹重要的成員變數 width和height表示了的尺寸。其次是depth和nchannels,depth是指畫素顏色的取值範圍,nchnannels為影象的通道,可以取1,2,3,4 origin變數定義了影象的原點,有兩個取值,分別是ipl origin bl和ipl or...
Python 基本資料結構
列表是python裡的內建的型別之一,可以新增和刪除其中的元素。如 role sam 33 dean 37 可以列表中包含列表,同一列表中包含不同型別的資料。下面介紹列表的一些通用操作,關於list的其他用法,可以通過help list 檢視。a 2,13,12,41,17,23 a 1 列表從0開...
基本資料結構定義
定義 棧是一種只能在一端進行插入或刪除操作的線性表。表中允許進行插入 刪除操作的一端稱為棧頂。棧頂的當前位置是動態的,棧頂的當前位置由乙個稱為棧頂指標的位置指示器指示。表的另一端稱為棧底。當棧中沒有資料元素時,稱為空棧。棧的插入操作通常稱為進棧或入棧,棧的刪除操作通常稱為退棧或出棧。特點 後進先出 ...