第一章概念比較多,而且雜亂;難點是時間複雜度和空間複雜度的計算。下面對這一章分點總結:
1,1什麼是資料結構?
1、計算機解決具體問題的步驟:分析數學模型---求解演算法---編寫程式---測試程式---解答;
2、線性資料結構:圖書館的書目檢索系統、查號系統自動化、倉庫賬目管理等;
樹型資料結構:棋盤對弈問題;
圖形資料結構:多叉路**通燈管理問題;
3、資料結構:資料結構是一門研究非數值計算的程式設計問題中計算機操作對像以及它們之間的關係和操作的學科,其實質是對確定的問題選擇一種好的結構,加上設計一種好的演算法,其是包括硬體、軟體、數學等學科的綜合性學科。
1.2 基本概念和術語
1、資料:客觀事物的符號表示,一切可以輸入到計算機並能被電腦程式處理的符號的總稱;
資料元素:是資料的基本單位,通常作為乙個整體進行考慮和處理,考慮1.1節三節資料結構的資料元素分別是什麼;(資料項)
資料對像:性質相同的資料元素的集合,是資料的乙個子集;
資料結構:是相互之間存在一種和多種特定關係的資料元素的集合;
結構:資料元素相互之間的關係,含有四種基本結構:集合、線性結構(一對一)、樹形結構(一對多)、圖形結構(多對多);
2、資料結構常討論的兩種結構:邏輯結構、儲存結構(順序儲存結構(順序映像,如陣列)、鏈式儲存結構(非順序映像,如指標));
資料型別:資料型別是乙個值的集合和定義在這個值集上的一組操作的總稱,其一般分為基本型別和結構型別;
抽像資料型別:抽像資料型別是指乙個數學模型及定義在該模型上的一組操作,抽像資料型別通常分為原子型別、固定聚合型別、可變聚合型別等;
多形資料型別:多形資料型別是指其值的成份不確定的資料型別,有點類似於c++的類模板;
抽像資料型別的格式定義:
adt抽像資料型別名{
資料對像:《資料對像的定義》
資料關係:《資料關係的定義》
基本操作:《基本操作的定義》
}adt抽像資料型別名
1.3 抽像資料型別的表示和實現
1.4 演算法和演算法分析
演算法:演算法是對特定問題求解步驟的一種描述,是指令的有限序列,演算法的特性:有窮性、確定性、可行性、輸入、輸出;
演算法設計要求:正確性、可讀性、健壯性、效率和低儲存量需求;
演算法效率的度量:事後統計的方法、事前分析估算的方法;
時間複雜度:t(n)= o(f(n)),隨問題規模n的增大,演算法執行時間的增長率和f(n)的增長率相同,稱做演算法的漸近時間複雜度,一般選擇最壞的情況做為時間複雜度;
頻度:頻度是指該語句重複執行的次數;
空間複雜度:空間複雜度作為演算法所需儲存空間的量度,記為:s(n)=o(f(n));
第一章 緒論
1.16 void print descending int x,int y,int z 按從大到小順序輸出三個數 print descending 1.17 status fib int k,int m,int f 求k階斐波那契序列的第m項的值f gender char schoolname 校...
第一章 緒論
本 題目源於粵電集團科研專案 沙角a電廠優化排程輔助決策系統 沙角a電廠電網排程已由原來對互不聯絡的單機排程方式發展為對全廠整體總負荷的經濟排程方式,現有五颱發電機組 其中210mw機組三颱,300mw機組二台 的主要工作如下 1.實時資料採集及預處理 機組效能計算和能損分析建立在準確獲取現場資料的...
第一章 緒論
1.1 資料結構在程式設計中的作用 a 問題 資料模型 基本思路 想法 資料表示 資料處理 演算法 程式語言 程式設計環境 設計方法 程式 b 著名公式 資料結構 演算法 程式 1.2 本書討論的主要內容 a 問題一般分為 數值問題 非數值問題 a 數值問題抽象出的資料模型通常是數學方程 b 非數值...