資料結構和演算法 Day 1

2021-08-07 10:03:28 字數 558 閱讀 9599

資料結構是一門研究非數值計算的程式設計問題中的操作物件,以及他們之間的關係和操作等相關問題的學科。

程式設計 = 資料結構 + 演算法

簡單來說,資料結構研究的是一種關係,就是資料元素相互之間存在的一種或多種特定關係的集合。

傳統上,資料結構分為邏輯結構和物理結構

邏輯結構是指資料物件中的資料元素之間的相互關係,也是資料結構關注的重點。

物理結構是指資料的邏輯結構在計算機中的儲存形式。

四大邏輯結構:

1)集合結構:集合結構中的元素除了同屬於乙個集合之外,沒有其他聯絡。

2)線性結構:線性結構中的資料元素之間是一對一的關係。

3)樹形結構:樹形結構中的資料元素存在一種一對多的層次關係。

4)圖形結構:圖形結構的資料元素之間是多對多的關係。

物理結構:研究的是如何把資料元素儲存到計算機的儲存器中。

1)順序儲存:是把資料元素存放在位址連續的儲存單元裡,其資料間的邏輯關係和物理關係是一致的。

2)鏈式儲存:是把資料元素存放在任意的儲存單元裡,這組儲存單元可以是連續的,也可以是不連續的。

資料結構和演算法 day1

這是計算機必修課,很搞腦子,但要讓程式設計能力有質的飛躍,而不是簡單呼叫各種現成api去實現各種功能,卻不懂內部原理,就必須學習這門課,自己設計結構和演算法。3.資料結構和演算法為什麼要一起學?二 資料結構分為邏輯結構和物理結構 三 程式 資料結構 演算法 演算法是解決特定問題的步驟描述,表現為有限...

資料結構和演算法 排序演算法day1

排序演算法的執行效率 1 時間複雜度的最好,最壞,平均情況 2 時間複雜度的係數,常數,低階 3 比較次數和交換次數 2 排序演算法的記憶體消耗 我們可以通過空間複雜度來衡量 排序演算法的穩定性 穩定性就是經過排序之後,相等的元素的先後順序不改變 這裡只些一些常用的排序演算法如 氣泡排序 插入排序 ...

資料結構 day1

資料結構往往跟演算法有很大關係 ep1 圖書館 ep2 遞迴函式很有可能導致記憶體溢位 因為每一次遞迴都在記憶體裡新建了乙個 程式 如果遞迴次數過多,那麼這個程式占用的空間會很恐怖 ep3 多項式 正常演算法和秦九韶演算法的比較。秦九韶演算法有效的減少了乘法的量級 clock 獲得從程式開始到呼叫這...