前端開發設計的時間複雜度和空間複雜度

2021-10-13 01:49:59 字數 698 閱讀 6011

// 時間複雜度

function

gettime

(n)return sum

}// 時間複雜度為 o(2n + 2) 因為係數、常熟對 n 的增長規模沒有影響 不需要考慮,可以忽略

// 所以時間複雜度為 o(n)

// 如果一段**中沒有迴圈、遞迴等語句,通常時間複雜度都是o(1)

function

gettime

(n)}

// 這種成倍數的就是o(logn)

function

gettime

(n)}

return sum;

}// 類似這種巢狀2層的for迴圈 一般都會選擇執行次數最多的 時間複雜度就是 o(n^2)

// 常見的時間複雜度(從低到高): o(1) o(logn) o(n) o(nlogn) o(n^2)

// 空間複雜度

// 常見的空間複雜度

// o(1)

let a =1;

let b =

1// o(n)

let arr =

newarray

(n)// o(n^2)

let arr =

for(

let a =

0; a < n; a++

)}

時間複雜度和空間複雜度

同一問題可用不同演算法解決,而乙個演算法的質量優劣將影響到演算法乃至程式的效率。演算法分析的目的在於選擇合適演算法和改進演算法。乙個演算法的評價主要從時間複雜度和空間複雜度來考慮。1 時間複雜度 1 時間頻度 乙個演算法執行所耗費的時間,從理論上是不能算出來的,必須上機執行測試才能知道。但我們不可能...

時間複雜度和空間複雜度

1 時間複雜度 1 時間頻度乙個演算法執行所耗費的時間,從理論上是不能算出來的,必須上機執行測試才能知道。但我們不可能也沒有必要對每個演算法都上機測試,只需知道哪個演算法花費的時間多,哪個演算法花費的時間少就可以了。並且乙個演算法花費的時間與演算法中語句的執行次數成正比例,哪個演算法中語句執行次數多...

時間複雜度和空間複雜度

演算法的時間複雜度和空間複雜度合稱為演算法的複雜度。1.時間複雜度 1 時間頻度 乙個演算法執行所耗費的時間,從理論上是不能算出來的,必須上機執行測試才能知道。但我們不可能也沒有必要對每個演算法都上機測試,只需知道哪個演算法花費的時間多,哪個演算法花費的時間少就可以了。並且乙個演算法花費的時間與演算...