資料—----類
資料物件--集合
資料元素--類物件
資料項-———屬性
什麼是資料結構?
概念:相互之間存在一種或多種特定關係的資料元素(類物件)的集合。
資料結構包括:
資料的邏輯結構(數學形式)
集合結構
線性結構(1:1)
樹形結構(1:n)
圖形結構(n:n)
資料的物理結構(儲存形式)
順序儲存形式(ep. 陣列)
鏈式儲存結構(ep. 鍊錶)
—-資料的儲存需要借助於[資料型別]來實現,資料型別分為兩大類:
原子資料型別:整型、實型、字元型...
結構資料型別:整形陣列、結構體、[類]、…
什麼是演算法?
演算法這個詞最早出現在《印度數學算數》(公元825年,波斯數學家阿勒·花剌子密);
如今普遍認可的對演算法的定義是:演算法是解決特定問題求解步驟的描述,在計算機中表現為指令的有限序列,並且每條指令表示乙個或多個操作。
演算法的五個基本特性:
* 輸入
* 輸出
* 有窮性
* 確定性
* 可行性
什麼算是好的演算法?
* 正確(合法的輸入具有正確的輸出)
* 健壯(非法的輸入具有合理的提示)
* 高效(時間複雜度 和 空間複雜度較低)
* 可讀(注釋)
線性表:
順序儲存線性表:
鏈式儲存線性表:
單向鍊錶
雙向鍊錶
迴圈鍊錶
棧: 順序棧
鏈式棧站的應用-遞迴:
概念:我們把乙個直接呼叫自己或通過一系列的呼叫自己的函式稱作遞迴函式。
遞迴必須要有終止條件,不然就會一直遞迴呼叫下去直至棧溢位。
佇列: 順序佇列
迴圈佇列
樹: 普通樹
二叉樹完全樹
完全二叉樹
圖:
資料結構 概覽
資料結構 在電腦科學資料結構是一種資料組織和儲存格式,支援非常高效。訪問和修改。1 2 3 更準確地說,乙個資料結構是資料值的集合,它們之間的關係,可以應用到的函式或運算元據。4 資料結構可以實現乙個或多個特定的抽象資料型別 adt 指定的操作可以在乙個資料結構和執行計算複雜度這些操作。相比之下,乙...
資料結構 概覽
概念 資料 是對客觀事物的符號表示。能輸入到計算機中並且被電腦程式處理的符號的總稱 資料元素 描述資料的基本單位 資料項 描述資料的最小單位 資料型別 數值,字元等對資料分成不同的型別 抽象資料型別 由資料物件,資料關係和基本操作三部分組成,可用三元組 d,s,p 表示 資料結構 資料和結構兩部分,...
線性資料結構概覽
陣列 array 是一種線性表資料結構。它用一組連續的記憶體空間,來儲存一組具有相同型別的資料。陣列支援隨機訪問,根據下標隨機訪問的時間複雜度為 o 1 arraylist 無法儲存基本型別,比如 int long,需要封裝為 integer long 類,而 autoboxing unboxing...