C語言算法的時間復雜度如何計算啊?
1 回答

SMILET
TA貢獻1796條經驗 獲得超4個贊
看看這個 每個循環都和上一層循環的參數有關。 所以要用地推公式: 設i(n)表示第一層循環的i為n時的循環次數,注意到他的下一層循環次數剛好就是n,分別是0,1,2...n-1 所以,把每一層循環設一個函數分別為:j(n),k(n),t(n) 則有 i(n)=j(0)+...+j(n-1) j(n)=k(0)+...+k(n-1) k(n)=t(0)+...+t(n-1) i(0)=j(0)=k(0)=0 t(n)=1 而總循環數是i(0)+i(1)...+i(n-1) 可以根據遞推條件得出準確值 所以算法復雜度是O(i(0)+i(1)...+i(n-1))
- 1 回答
- 0 關注
- 994 瀏覽
添加回答
舉報
0/150
提交
取消