C 資料結構知識點

2022-01-23 15:58:41 字數 2277 閱讀 6629

資料結構(data stucture)的定義:資料結構由資料元素的集合和該集合中資料元素之間的關係組成。

即。線性結構,即線性表(linearlist).  ---陣列(array),檔案,棧(stack),佇列(queue),優先順序佇列

非線性結構  ---集合,圖

c++類預設訪問級別是private

struct預設訪問級別是 public 這可以說是他們的惟一區別。

union預設訪問級別也是 public

流是個簡單的字串行

cout《並清空流。

c++的輸入輸出:

void

main()

infile>>number;}//

解釋:

open函式引數有兩個,乙個是檔名,另乙個是資料流動方向,

其模式有:

ios::

outios::

in//

追加到檔案末尾

ios::binary

ios::nocreate

//檔案不存在則開啟失敗 !

c++函式都有返回,用return表示返回乙個與返回型別相同的值並終止函式的執行。

c++引數傳遞:

c++函式引數傳遞預設是採用傳值,即copy乙個副本,並不改變實參的值。

若需要傳引用,則需要加上&,如 love(int &)。  引用傳遞的是實參的位址,所做改變都是對實參的改變。

如果引數是乙個非常巨大的物件時,採用傳引用將會節省非常多的傳值時間,並且省去了副本占用的空間。

另外,當函式的返回值多於乙個時,其中乙個可由return返回,其他可使用引用型引數返回呢。

注意了:

傳值的時候,引數可以是常量,常數,變數,表示式。

傳引用時,只能是變數或者物件。

陣列的傳遞非常特殊,傳的是陣列第乙個元素的位置,也就是引用傳遞。 函式內部所做的改變將引起陣列的變化,這一點必須牢記!

int addall(int a,int

n)

如果傳遞的引數是乙個物件a,那麼函式中會建立a的乙個副本,建立時自然會呼叫a的複製建構函式,在函式結束的時候會呼叫副本的析構函式撤銷這個副本。

此時若沒有自定義的複製建構函式,將呼叫編譯器自動產生的複製建構函式。 原物件a的建構函式中不可以使用指標動態建立記憶體空間,因為自動產生的複製建構函式只

進行簡單的指標複製,不分配空間。 或者你自己定義複製建構函式。

c語言中動態分配空間使用函式malloc  通過free釋放這個空間

c++則用new 和delete取代了malloc and free.

int *p=new int;  指標會根據型別自動強制轉換。

delete p;

int *p=new a[100];

delete a;

c++的繼承性:

class

shape;

class traingle:public

shape //

注意,繼承不到父類的private屬性。

c++的多型性:

c++支援兩種多型性: 

操作符過載:

point operator+(const point&p);

point operator*(int i);

int operator<(const point& p);

輸入輸出符過載:

istream& operator>>(istream$ is,object& o) //

過載輸入運算

ostream& operator

<<(ostream$ os,object& o) //

過載輸出運算

這樣子,輸入

cin>>o1;

cout<c++的虛函式:

虛函式通過在基類中使用vitual修飾函式而產生,有兩種情況:

1. vitual void

draw()

2. vitual void draw()=0; //不提供實現,需要在子類實現。 這樣的虛函式稱為純虛函式(pure vitual function),如果乙個類有至少乙個純虛函式,那麼這個類就是抽象類(abstract class)。

抽象類不可以生成例項,只能被繼承。

資料結構 知識點

定義 度 兒子數 分支節點 除了根和葉子的節點 根的深度為1 資料結構的分類 資料結構分為邏輯結構和物理結構。邏輯結構 表現資料之間的關係的一種資料結構,分為線性結構和非線性結構。物理結構 表現資料如何儲存的一種資料結構,通常分為順序結構 鏈式結構 索引結構和雜湊結構。有序表,也叫有序線性表,資料按...

資料結構知識點

1 線性結構與非線性結構 線性結構 線性表,棧,隊 乙個根節點,最多乙個前節點乙個後節點 首節點無前節點,尾接點無後節點 非線性結構 樹形結構,圖形結構 線性表 由一組資料元素構成,資料元素的位置只取決於自己的序號 陣列 棧 限定只能在表的一端進行插入和刪除,先進後出,只能在棧頂進出 佇列 只能在表...

資料結構,知識點

二叉樹 定義 二叉樹在圖論中是這樣定義的 二叉樹是乙個連通的無環圖,並且每乙個頂點的度不大於3。有根二叉樹還要滿足根節點的度不大於2。基本概念 二叉樹是遞迴定義的,其結點有左右之分,邏輯上二叉樹有五種基本形態 1 空二叉樹 2 只有乙個根節點的二叉樹 3 只有左子樹 4 只有右子樹 5 完全二叉樹。...