有窮性、確定性、可行性、有輸入、有輸出
正確性、可讀性、健壯性的bug:寫出**很少有bug,而且系統比較穩定、高效率與低儲存: 記憶體+cpu、很少堆疊記憶體oom、記憶體占用最小,cpu占用最小,運算速度最快。
時間複雜度::執行乙個程式所花費的時間。空間複雜度:執行程式所需要的記憶體 oom
大o表示法。例如 o(n),o(nlogn);o(1),o(n),o(nlogn),o(n^2),o(n+1),o(logn),o(n!)大小比較:o(1)>o(logn)>o(n)>o(nlogn)>o(n2)>o(nx)
public
class
bigo
int n = integer.max_value;
//表示n是未知
int i =1;
for(
int j =
0; j < n ;j++)}
while
( i <= n)
//i的值:2 4 8 16 32,=》2^0,2^1,2^2,2^3,.....2^n
//===> 2^x=n =>求出x就是我們執行的次數 => x=log2n =>計算機忽略掉常數 => x = logn =>o(logn)
//二分查詢 為什麼是logn的演算法?
//1~100 找69這個數
//50:(1+100)/2 = 50
for(i =
0; i < n;i++
)for
(i =
0; i < n;i++)}
/* * 外面的迴圈次數是確定的 o(n) n次,1 2 3 4 。。。n
* * i=n 執行1次
* i=n-1 執行2次
* .* .
* .* i=1 執行n次
* * 1,2,3 …… n次 最後裡面這層要執行多少次?1+2+3+……+n=n*(n+1)/2 =>
* */
for(i =
0; i < n;i++)}
/*int data[100];
list<>; list.add();
map put
set add
queue*/
}}
我是小白弟弟,乙個在網際網路行業的小白,立志成為一名架構師
時間複雜度 空間複雜度 演算法基礎
1空間複雜度 演算法的空間效能分析 1 演算法的空間效能的影響因素 指令空間 由機器決定 資料空間 常量,變數占用空間 環境棧空間 2 度量方法 單個常量,變數 由機器和編譯器規定的型別儲存決定。陣列變數 所佔空間等於陣列大小乘以單個陣列元素所佔的空間。結構變數 所佔空間等於各個成員所佔空間的累加 ...
演算法基礎 時間複雜度和空間複雜度
演算法複雜度分為時間複雜度和空間複雜度。其作用 時間複雜度是指執行演算法所需要的計算工作量 而空間複雜度是指執行這個演算法所需要的記憶體空間。演算法的複雜性體現在執行該演算法時的計算機所需資源的多少上,計算機資源最重要的是時間和空間 即暫存器 資源,因此複雜度分為時間和空間複雜度 簡單來說,時間複雜...
演算法基礎 時間複雜度和空間複雜度
演算法複雜度分為時間複雜度和空間複雜度。其作用 時間複雜度是指執行演算法所需要的計算工作量 而空間複雜度是指執行這個演算法所需要的記憶體空間。演算法的複雜性體現在執行該演算法時的計算機所需資源的多少上,計算機資源最重要的是時間和空間 即暫存器 資源,因此複雜度分為時間和空間複雜度 簡單來說,時間複雜...