資料:程式的操作物件,用於描述客觀事物
資料元素:組成資料的基本單位
資料項:乙個資料元素由若干個資料項組成
資料物件:性質相同的資料元素的集合(陣列,鍊錶)
struct person //一種資料型別
;int
main
(void);
//資料項
p1.age =0;
//資料項
}
線性結構:元素之間的關係為一對一
圖形結構:元素之間的關係為多對多
樹形結構:元素之間的關係為一對多
順序儲存結構:資料元素在記憶體中處於一段位址連續的空間(陣列)
鏈式儲存結構:資料元素在記憶體中位址不連續,通過指標實現邏輯上的連續(鍊錶)
資料物件集
資料集合相關聯的操作集
與存放資料的機器無關
與資料儲存的物理結構無關
與實現操作的演算法和程式語言無關
輸入:演算法具有0個或多個輸入
輸出:演算法至少有1個或多個輸出
有窮性:演算法在有限的步驟之後會自動結束而不會無限迴圈
確定性:演算法的每一步都有確定的含義,不會出現二義性
可行性:演算法的每一步都能執行有限的次數完成
大量使用迴圈
乘除法比加減法消耗的時間多
平時分析的一般是最壞時間複雜度
大量遞迴呼叫函式
大量建立變數或物件
t(n) = o(f(n)表示存在常數c>0, n[0]>0使得當n>=n[0]時有t(n) <= c * f(n) (函式的上界)
o(1) < o(log n) < o(n) < o(nlog n) < o(n^2) < o(n^3) < o(2^n) < o(n!) < o(n^n)
複雜度加法法則:t1 + t2 = max(o(f1), o(f2))
複雜度乘法法則:t1 * t2 = o(f1 * f2)
乙個for迴圈的時間複雜度等於迴圈次數乘以迴圈體**的複雜度
if-else結構的複雜度取決於if的條件判斷複雜度和兩個分支部分的複雜度,總複雜度取三者中最大
#include
#include
clock_t start, stop;
//clock_t是clock()函式返回的變數型別
double duration;
//記錄被測函式執行時間,單位:秒
intmain
(void
)
基本概念 C 基本概念
由於工作中需要用到c 編寫的一些工具,有時候需要根據需求修改或者定製工具,所以現在不得不學習一下c 的基礎語法,此為筆記,不成章法!機器語言 組合語言 高階語言 面向過程的程式設計方法 物件導向的程式設計方法 泛型程式設計方法 1 演算法設計 2 源程式編輯 3 編譯 4 連線 5 執行除錯 輸入裝...
一 WCF 基本概念
微軟提供了四種方案來實現分布式的通訊互動技術 web service 和wse net remoting net 企業服務 msmq wcf 體系架構圖 契約 乙個服務契約公開介面的一部分。定義了服務端公開的方法,傳輸協議,可訪問的位址,分為四種 服務契約 資料契約 錯誤契約 訊息契約 服務執行 服...
Core Data 《一》基本概念
core data是一種orm 物件關係對映 技術。orm是關係模型資料和物件模型類之間的乙個紐帶。關係模型和物件模型是有區別的,物件模型更加先進,能描述繼承 實現 關聯 聚合和組成等複雜的關 系,而關係模型只能描述一對 一 一對多和多對多的關係。這兩種模型之間的不和協稱為阻抗不匹配問題,而orm可...