考研資料結構

2021-08-09 08:29:53 字數 1775 閱讀 9218

(一)考研中的變數型別:

1 基本型別:int 、float 、 char

2 指標型別

3 結構體型:陣列,結構體

4 void型:考研中 定義無返回值函式。

(二)控制語句

1:判斷語句if (做決策)

2:迴圈語句 (做重複的事)

for

while

講講break與continue

break結束整個迴圈;

continue結束當前迴圈

(三)函式

——-解決一類問題的方法;

(產品) (工廠) (原材料)

返回值型別 函式名(引數定義列表)

函式呼叫: 函式名(引數列表);
引用型(&a):函式直接對變數進行操作,而不是對它的複製品進行操作;

(四)邏輯結構(資料之間的關係)

沒關係,一對一,一對多,多對多

集合 線性表 樹 圖

儲存結構(儲存資料和資料之間的關係的方式)

順序結構:儲存空間連續

鏈式結構:儲存空間離散分配

資料結構的研究:人很懶,不喜歡做相同重複的事情,所以,就把世界上所有的東西歸類(具有相同特性),然後在進行統一的操作(用計算機批量處理);

(五)線性表

定義:具有相同特性的元素的有限序列

邏輯結構:一對一(客觀存在)

(儲存結構在記憶體中不僅儲存資料還必須反應出他們一對一的關係,至於怎麼儲存,還得你去研究咯)

儲存結構:1、順序儲存結構(通過儲存單元的位置來反應元素之間的邏輯關係(線性))—–順序表

2、鏈式儲存結構(在記憶體中找不到一塊連續的儲存空間)(元素儲存在不連續的記憶體單元裡,記憶體單元之間通過指標相連)——鍊錶(單/雙(迴圈)鍊錶)

考點(非**部分)

考點1:特性對比問題 對線性表/鍊錶插入刪除元素 元素定位 記憶體單元的分配 記憶體的利用率;

考點2:插入刪除操作(寫**)

鍊錶的插入刪除主要注意後繼結點的位址避免丟失(覆蓋);

考點3:為什麼要設定頭節點?

考點4:計算元素移動次數問題

每個位置的插入/刪除操作等概率;

算出總的移動次數×概率=平均移動次數

考點5:靜態鍊錶 (考節點插入操作)

(記憶體一次分配的—-靜態)

(記憶體多次分配的—-動態)

記憶體空間連續分配

指標指向節點位址變為指向陣列下標(因為是連續分配嘛,可以用陣列下標代替具體位址)

考點(**部分)

考點1:順序表插入刪除**;

順序表的長度length

考慮兩點:插入刪除的位置範圍限制,插入式考慮記憶體是否已滿。然後就順其自然了;(**等會兒上)

考點2:建表

頭插法尾插法

考點3:逆置

(鍊錶逆置)

考點4:取最值

最大最小

考點5:歸併

考研資料結構 MaxHeap

原理這裡我們建立的是最大堆,用完全二叉樹來表示這個堆 1.堆頂比兩棵子樹中的任何元素都要大 2.每棵子樹同樣滿足這個條件 即根是樹中最大值,每棵子樹的根是子樹中的最大值 所以我們在構造的時候要先從最小的子樹開始構造,這樣才能構造更大的子樹 建立大頂堆,a 1 為最大元素 typedef struct...

考研資料結構 排序

人生哪有最好,把每乙個當下做到最好,就很不錯了呀。以下以考試主要考查的重點內容為主體,講述過程以方便大家記憶為上,並不面面俱到。首先得知道排序分內部排序和外部排序。內部排序 排序整個過程中資料在記憶體中。外部排序 排序整個過程中資料會有出現在內 外存之間調動的情況。考研主要考內部排序。內部排序主要分...

資料結構(考研 面試)

參考清華大學嚴蔚敏資料結構與演算法 適用於考研 求職 本教程全部採用c語言實現 data struct ds 資料之間組織架構 結構 線性 seqlist list stack queue string array 非線性 tree graph1.1.1 資訊處理 計算機解決問題的大致步驟 具體問題...