搜索的時間復(fù)雜度:O(答案總數(shù) * 構(gòu)造每個答案的時間) 舉例:Subsets問題,求所有的子集。子集個數(shù)一共 2^n,每個集合的平均長度是 O(n) 的,所以時間復(fù)雜度為 O(n * 2^n),同理 Permutations 問題的時間復(fù)雜度為:O(n * n!)
動態(tài)規(guī)劃的時間復(fù)雜度:O(狀態(tài)總數(shù) * 計算每個狀態(tài)的時間復(fù)雜度) 舉例:triangle,數(shù)字三角形的最短路徑,狀態(tài)總數(shù)約 O(n^2) 個,計算每個狀態(tài)的時間復(fù)雜度為 O(1)——就是求一下 min。所以總的時間復(fù)雜度為 O(n^2)
用分治法解決二叉樹問題的時間復(fù)雜度:O(二叉樹節(jié)點個數(shù) * 每個節(jié)點的計算時間) 舉例:二叉樹最大深度。二叉樹節(jié)點個數(shù)為 N,每個節(jié)點上的計算時間為 O(1)。總的時間復(fù)雜度為 O(N)
新聞熱點
疑難解答