資料結構與演算法

2021-09-11 06:43:18 字數 874 閱讀 2045

資料結構與演算法系列 概念篇

資料結構概念

給幾個官方定義:

「資料結構是抽象資料型別的物理實現」

「資料結構是計算機中儲存,組織資料的方式。通常情況下,精心選擇的資料結構可以帶來最優效率的演算法」

有點不太好理解。。。那到底什麼是資料結構?

1、資料結構就是關於資料物件在計算機中的組織方式

舉個例子:圖書館的書籍是怎麼擺放的,可以是隨機擺放,一本挨著一本,也可以按照書的字母進行順序擺放,等等有一系列的擺放方法。資料結構涉及到兩種結構:

2、資料物件必定與一系列加在其上的操作相關聯,而實現這些操作所用的方法就是演算法了

圖書館的書擺放好了,那來了一本新書該怎麼放?我怎麼找我想要的新書呢?等等,必定是要有一系列的操作的。

3、描述資料結構有乙個很好的方法叫:抽象資料型別,包含了兩個知識點

抽象:描述資料型別的方法不依賴與具體的實現

演算法概念

演算法的概念沒什麼好講的,主要是怎麼去評價乙個演算法的好壞,先看兩個概念,空間複雜度s(n):程式在執行時占用的儲存單元長度,時間複雜度t(n):程式執行時耗費時間的長度,n代表著資料的規模;

但是一般我們不對演算法做非常精細的分析,我們只需要粗略的知道它的乙個增長趨勢就可以了,於是就有了複雜度的漸進表示法:

t(n)=o( f(n))表示存在常數c>0,n0>0使得當n>n0時有t(n)t(n)=ω( g(n) )則表示的是g(n)是t(n)的乙個下界。

這裡要記住一些常見的函式的增長趨勢變化圖 log n,n,nlogn,

n平方,2的n次方!

資料結構與演算法 演算法 演算法和資料結構

資料結構與演算法 演算法 好吧,在這裡,您被優秀或優秀的軟體開發人員所隔開。在這種情況下,我會告訴您一開始或至少在我的情況下,並且我知道大多數時候,對於我認識的大多數人,您會覺得自己是乙個無能的人或白痴。基本上,我怎麼可能不理解這一點,然後您會感到沮喪。在這種情況下,我會告訴您情況並不像您想的那麼糟...

資料結構 資料結構與演算法01

1 求一組整數中的最大值。演算法 基本操作是 比較兩個數的大小 模型 仔細想想 你並不知道這個整數到底是多大?整數過大你該怎麼去表示?2 足協的資料庫管理的程式 演算法 需要管理的專案?如何管理?使用者介面?模型 3 資料與資料結構 資料 所有能被輸入到計算機中,並被計算機處理的符號的集合計算機操作...

資料結構 資料結構與演算法02

1 演算法設計的原則 設計演算法時,通常應考慮達到以下目標 1,正確性 2,可讀性 3,健壯性 4,高效率與低儲存量需求 1,正確性 規格說明 四個層次 a,程式中不含語法錯誤 b,程式對於幾組輸入資料能夠得出滿足要求的結果 c,程式對精心選擇的 典型 苛刻切帶有刁難性的幾組輸入資料能夠得出滿足要求...