01 認識演算法

2021-10-08 03:00:11 字數 655 閱讀 4602

資料結構是指相互之間存在的一種或多種特定關係的資料元素集合。

資料型別按結構特徵劃分:

五大特性:

資料結構是有限的,只有寥寥數種,而演算法則是琳琅滿目的。資料結構就彷彿乙個蘋果,演算法則是你選擇吃蘋果的方式。

function sum(n) 

return total;

}

上面是乙個累加求和的方法,假設每條語句執行的時間為time,這個方法對於n來說執行的使時間是多少?

解析:第2行執行一次,時間為time;

第3,4行執行n次,時間為timen2;

第6行執行一次,時間為time;

總的執行時間為 time+ time+ timen2;

使用f(n)表示**的執行次數和資料規模的關係,即:f(n) = 2n+2;

當n無窮大時,f(n) = n,使用大o表示法得o(n)

function factorial (num)  else 

}

分析:

固定部分:factorial此函式所佔據的空間大小。

可變部分:輸入輸出資料所占用的空間(num)、函式執行期間為每個遞迴分配的空間,即呼叫棧。

空間複雜度可理解為:函式空間 + num空間 + 呼叫棧空間。

漫遊演算法 01 認識演算法

我是一名初中oier。在開始寫這第一篇文章之前,我其實已經反覆考慮很久了。起初我不敢冒然寫。一是由於我的程式設計水平不是特別精湛,沒有積累足夠的經驗 二是我的語文比較弱,寫出的文章可能並不精彩,甚至難以理解。但是我最終決定開始部落格生涯,因為我相信寫文章是每個oier都不得不經歷的。寫文章不僅僅可以...

簡單認識PHP 01

一 了解php 二 什麼是php 三 php 是一門令人驚嘆的流行語言 四 什麼是 php 檔案 五 php能夠做什麼 六 為什麼使用 php 七 安裝php步驟 1.php 是一種建立動態互動性站點的強有力的伺服器端指令碼語言 php 指令碼在伺服器上執行。2.php 是免費的,並且使用廣泛。對於...

執行緒池 初步認識 01

二 好處 三 實現原理 期望 每次任務提交的時候,都是當前執行的執行緒數大於等於核心執行緒數,此時不用獲取全域性鎖,即加入工作佇列。四 通過threadpoolexecutor建立執行緒池 1.corepoolsize 2.maximumpoolsize 3.keepalivetime 4.unit...