算法的时间复杂度是指(算法设计与分析算法的时间复杂度)
算法的時間復雜度是指算法執行過程中所需要的基本運算次數。
算法是在有限步驟內求解某一問題所使用的一組定義明確的規則。(推薦學習:MySQL視頻教程)
通俗地說,就是計算機解題的過程。算法的復雜性是算法效率的度量,是算法運行所需要的計算機資源的量,是評價算法優劣的重要依據。我們可以從一個算法的時間復雜度與空間復雜度來評價算法的優劣。
當一個算法轉換成程序并在計算機上執行時,其運行所需要的時間取決于下列因素:
(1)硬件的速度。
(2)書寫程序的語言。實現語言的級別越高,其執行效率就越低。
(3)編譯程序所生成目標代碼的質量。對于代碼優化較好的編譯程序,其所生成的程序質量較高。
(4)問題的規模。例如,求100以內的素數與求1000以內的素數,其執行時間必然是不同的。
顯然,在各種因素都不能確定的情況下,很難比較出算法的執行時間。也就是說,使用執行算法的絕對時間來衡量算法的效率是不合適的。因此不能用算法程序的執行時間或程序長短來確定時間復雜度,而應該用算法執行過程中所需要的基本運算次數來衡量。
時間頻率 一個算法花費的時間與算法中語句的執行次數成正比例,哪個算法中語句執行次數多,它花費時間就多。一個算法中的語句執行次數稱為時間頻度。記為T(n)。
時間復雜度 在剛才提到的時間頻度中,n稱為問題的規模,當n不斷變化時,時間頻度T(n)也會不斷變化。但有時我們想知道它變化時呈現什么規律。為此,我們引入時間復雜度概念。
一般情況下,算法中基本操作重復執行的次數是問題規模n的某個函數,用T(n)表示,若有某個輔助函數f(n),使得當n趨近于無窮大時,T(n)/f(n)的極限值為不等于零的常數,則稱f(n)是T(n)的同數量級函數。記作T(n)=O(f(n)),稱O(f(n)) 為算法的漸進時間復雜度,簡稱時間復雜度。
更多MySQL相關技術文章,請訪問MySQL教程欄目進行學習!
以上就是算法的時間復雜度是指的詳細內容,更多請關注風君子博客其它相關文章!
總結
以上是生活随笔為你收集整理的算法的时间复杂度是指(算法设计与分析算法的时间复杂度)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何向 Microsoft 管理控制台添
- 下一篇: 什么是操作系统?它的作用是什么?