第一章 資料結構與演算法簡介
一、什麼是資料結構
資料結構(Data Structure)是計算機儲存,組織資料的方式,指互相之間存在一種或者多種特定關係的資料元素的集合。簡單來說,資料結構就是一些專案,在實現過程中,需要在記憶體當中將資料儲存起來。
1、舉例
(1)問題
通訊錄中將每個人的資訊(姓名、聯絡方式)儲存起來,這樣就可以方便查詢,怎麼才能將這個資訊儲存起來呢?
(2)解答
①陣列:在儲存的過程中,有可能會超出定義的陣列大小,這樣就需要擴容了。所以實現起來會很麻煩。
②連結串列:需要儲存資料時,在增加儲存的時候,就需要申請一塊記憶體,並且使用指標將記憶體連結起來,這樣做就會比較方便。
③樹:儲存之後,在查詢某個人時,就需要用到樹。並且要用樹裡面比較複雜的樹。
④等等。
【注】對於不同的用法(儲存、查詢),使用資料結構的方法也是不同的。這就需要選擇不同的資料結構!!!
二、什麼是演算法
演算法(Algorithm)是定義良好的計算過程,取一個或者一組的值為輸入,並產生出一個或者一組值作為輸出。簡單來說,演算法就是一系列的計算步驟,用來將輸入資料轉換為輸出成果。
1、常見演算法
①排序;
②查詢;
③去重;
④推薦演算法(複雜);
④等等。
2、排序(舉例)
在購物平臺買手機,可以透過價格進行排序,可以透過釋出時間進行排序,也可以透過銷量進行排序,因此排序就顯得很重要。
3、查詢(舉例)
在取快遞的時候,透過輸入快遞號、手機號進行查詢。
4、推薦演算法(舉例)
在使用抖音的時候,習慣性的喜歡觀看什麼型別的影片,就會推薦一些相類似的影片。