1什麼是資料結構?什麼是演算法?
從廣義上講,資料結構就是指一組資料的儲存結構。演算法就是運算元.(資料結構指的是「一組資料的儲存結構」,演算法指的是「運算元據的一組方法」。)
從狹義上講,是指某些著名的資料結構和演算法,比如佇列、棧、堆、二分查詢、動態規劃等.
資料結構:陣列、鍊錶、棧、佇列、雜湊表、二叉樹『、堆、跳表、圖、tire樹
演算法: 遞迴、排序、二分查詢、搜尋、雜湊演算法、貪心演算法、分治演算法、回溯演算法、動態規劃、字串匹配演算法
2資料結構和演算法的關係
資料結構是為演算法服務的,演算法要作用在特定的資料結構之上。
資料結構是靜態的,它只是組織資料的一種方式。如果不在它的基礎上操作,構建演算法,孤立存在的資料結構就是沒用的.
3理解複雜度分析
資料結構和演算法在不同的環境下他們的效率是不同的,那我們如何來判斷這個資料結構和演算法在當前環境下的效率.
這就需要引用乙個衡量的標準.時間複雜度和空間複雜度.學習資料結構和演算法的基石,就是要學會`複雜度分析`。
知道怎麼去分析複雜度,才能作出正確的判斷,在特定的場景下選用合適的正確的演算法。而不是盲目的死記爛背,機械操作.
初學資料結構與演算法
程式設計 資料結構 演算法 1 資料結構基礎知識 資料 是描述客觀事物的符號,是計算機中可以操作的物件,是能被計算機識別,並輸入給計算機處理的符號集合 資料元素 是組成資料的 有一定意義的基本單位,在計算機中通常作為整體處理。也被稱為記錄 資料項 乙個資料元素可以有若干個資料項組成 資料項是資料不可...
初學資料結構
一 資料結構之所以存在 資料結構是由不同資料型別的資料組成的集合體,各個成員可以是不同的資料型別。也就是說,如果要定義乙個包含各種資料型別的物件時,用資料結構會更方便。二 定義資料結構 1.結構型別定義 形式 struct 識別符號 例如,定義乙個學生型別 struct student 2.定義結構...
初學資料結構
include using namespace std typedef int type struct testlist int main cout 高階輸入多個結點 從上面可以看出我們不可以讓頭結點發生位址變化,所以需要第三者 cnt for int i 0 i newnew data eleme...