從廣義上講,資料結構就是指有資料的儲存結構,演算法就是運算元據的一組方法
比如圖書館會將資料分類擺放,按照一定規律編號,就是書籍這種資料的儲存結構
一本一本的找或者根據書籍類別編號,是人文、計算機還是科學來定位暑假,然後再依次查詢。籠統的說這些查詢方法都是演算法。
資料結構和演算法是相輔相成的。資料結構是為演算法服務的,因為演算法要作用在特定的資料結構上。因此我們無法孤立資料結構來講演算法,也無法孤立演算法來講資料結構
資料結構和演算法解決的是如何更省、更快地儲存和處理資料的問題,因此我們就需要乙個考量效率和資源消耗的方法,這就是複雜度分析方法。
知道怎麼去分析複雜度,才能作出正確的判斷,在特定的場景下,選用合適的,正確的演算法。
複雜度分析概念幾乎佔據了資料結構和演算法這門課的半壁江山,是資料結構和演算法學習的精髓
資料結構:陣列、鍊錶、棧、佇列、雜湊表、二叉樹、堆、跳表、圖、trie樹
演算法:遞迴、排序、二分查詢、搜尋、雜湊演算法、貪心演算法、分治演算法、回溯演算法、動態規劃、字串匹配演算法
電腦科學和網際網路快速發展的情況下,需要計算的資料量越來越大,但是計算機的計算能力是有限的。這麼大量的資料計算,需要的計算機越來越多,需要越來越長的計算時間。
因此使用合適的資料結構和演算法,特別是在處理體量非常龐大的資料的時候,可以極大的提高計算效率
資料結構概念篇
資料 是描述客觀事物的符號,是計算機中科可以操作的物件,是能被計算機識別,並輸入給計算機處理的符號集合。資料項 乙個資料元素可以由若干個資料項組成。資料物件 是性質相同的資料元素的集合,是資料的子集。資料結構 是相互之間存在一種或多種特定關係的資料元素的集合。邏輯結構 是指資料物件中資料元素之間的相...
資料結構和演算法概念
資料 描述客觀事物的數字 字元以及一切能夠輸入到計算機中,並且能夠被電腦程式處理的符號的集合 資料元素之間的聯絡稱之為結構,資料結構就是具有結構的資料元素的集合。資料結構是乙個二元組 d,r 其中d是資料元素的有限集合,r是d上的關係的集合。資料元素之間具有的邏輯關係。分為線性關係,如線性表 陣列 ...
資料結構與演算法 基礎概念篇
我們都知道 程式設計 資料結構 演算法 首先我們先來認識資料結構和演算法的基本概念。相關概念 資料 是描述客觀事物的符號,是計算機中能夠操作的物件,能夠被計算機所識別 並輸入給計算機處理的符號集合。資料元素 是組成資料,有一定意義的基本單位,在計算機中常被作為整體處理,也被稱之為記錄。資料項 乙個資...