1.1
演算法+資料結構=程式
1.2基本概念和術語
資料、資料元素、資料項和資料物件
1.資料:所有能輸入計算機並被計算機處理的所有元素的總稱。
2.資料元素:資料的基本單位。
3.資料項:組成資料元素的最小單位。
4.資料物件:性質相同的資料元素的集合。
對於乙個學生資訊管理系統來說,所有的學生資訊和一系列相關屬於資料;每個學生的資訊屬於資料元素;學生的姓名、性別屬於資料項;
所有的學生資訊屬於資料物件。
資料結構
資料結構是相互之間存在一種或多種特定關係的資料元素的集合。
資料結構包括邏輯結構和物理結構。
邏輯結構:與資料的儲存無關,抽象的數學模型。
物理結構(儲存結構):資料的儲存方式,包括順序儲存和鏈式儲存。
資料型別和抽象資料型別
資料型別:例如int、float自定義型別等。
抽象資料型別(adt):有使用者定義的一種數學模型。//更方便理解演算法的一種描述形式,可看成封裝好的函式。
1.3基本資料型別的描述和實現
——略1.4
演算法和演算法分析
1.演算法的定義及特性
五大特性:有窮性、確定性、可行性、輸入、輸出。
演算法優劣的標準:正確性、可讀性、健壯性、高效性。
2.演算法的時間複雜度(重點)
對演算法時間度的測試:
例一:
for(i=1; i<=n; i++)//n+1
for(j=1; j<=n; j++)//(n+1)*n
( 注意:同樣的二個for迴圈,結果並非n*n或(n+1)*(n+1) );
//注釋:第一條語句包括一次i=1賦值語句和n次i++,頻度為n+1
//第二個語句表示上個語句進行了n次,故為(n+1)*n。
例二:for(i=1; i<=n; i++)//n+1
for(j=1; j
***********************準備工作*************************
//熟練使用結構體、指標
//了解結構體變數的->符號的意義(取結構體中的成員)
//知道偽**中status(返回值型別)、elemtype(元素型別)、ok(1或true)、error(0或false)、overflow(-1),用#define可轉化為可編譯的**形式。
//知道adt是什麼,抽象資料型別,代表某種操作,近似於封裝好的函式形式,但不能直接使用,需要使用者自己完成函式。
//了解c++基本輸入、輸出、申請儲存空間,即會使用cin、cout、new、delete。
//登陸過nyoj、hdu等網上oj系統
***********************目的***********************
//達到理解演算法並可以通過演算法解決一系列oj問題。
————2014.11.4
第一章 緒論
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 非數值...