最近和一些同事聊天時,發現自己對基礎知識越來越模糊了。索性就重新找出已經長滿灰塵的教科書,這些書在我大學畢業時沒捨得賣掉,一直留著的,希望到時能建立乙個大大的書櫥,只是現在每天上班,幾乎沒時間搭理這些;況且住的地方又是按期租的不到30平公尺的地兒,哪有空間讓我放個大書架啊!於是也就把這事給擱置了。言歸正傳:
1.什麼是資料結構
就是按照某種邏輯關係組織起來的一組資料元素,按一定的儲存方式儲存於計算機中,並在其上定義了乙個運算的集合。
2.什麼是邏輯結構
它是資料元素與資料元素之間的邏輯關係。
它有以下4類:集合、線性結構、樹形結構、圖形結構;
3.什麼是儲存結構
是資料在計算機中的儲存表示,也稱物理結構。包括以下4種基本儲存結構:
優點 缺點
順序儲存結構 節省儲存空間,能隨機訪問 不便於運算操作
鏈式儲存結構 便於運算操作 儲存空間利用率低,不能隨機訪問
索引儲存結構 不錯的隨機訪問,不錯的運算效率 為索引表增加了時間和空間開銷
雜湊儲存結構 查詢速度快 需要好的雜湊函式和處理「衝突」辦法
4.什麼是演算法
演算法是對特定問題求解步驟的一種描述,它是指令的有限序列,其每條指令表示乙個或多個操作。它有以下5個特徵:
a.有窮性、b.確定性、c.可行性、d.輸入性、e.輸出性
5.演算法分析
時間複雜度、空間複雜度;
一般情況下,鑑於運算空間較為充足,所以演算法把時間複雜度作為分析重點;
一般以基本運算的頻度來分析演算法的時間複雜度,記住以下關係:
1待續---》
重溫資料結構 樹 及 Java 實現
資料結構,指的是資料的儲存形式,常見的有線性結構 陣列 鍊錶,佇列 棧 還有非線性結構 樹 圖等 今天我們來學習下資料結構中的 樹。線性結構中,乙個節點至多只有乙個頭節點,至多只有乙個尾節點,彼此連線起來是一條完整的線。比如鍊錶和陣列 而樹,非線性結構的典型例子,不再是一對一,而變成了一對多 而圖則...
資料結構 1
線性結構 線性表,棧,佇列,串。線性結構特點 結構中的資料元素之間存在一對一的線性關係。線性表 線性表 最簡單 最基本 最常用的資料結構。操作不受限定。順序表 用順序儲存方式的線性表叫順序表。線性表的順序儲存方式 在記憶體中用一塊位址連續的空間一次存放線性表的資料元素。特點 表中相鄰的資料元素在記憶...
資料結構 1
資料結構是研究非數值計算的程式設計問題中計算機的操作物件以及它們之間的關係和操作的一門課程。具體地說,資料結構指的是資料元素之間的邏輯結構 儲存結構以其資料的抽象運算,即按某種邏輯關係組織起來的一組資料,再按一定的儲存表示方式把它們儲存在計算機的儲存器中,並在這些資料上定義乙個運算的集合.資料結構 ...