大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 淺談算法時間復雜度

淺談算法時間復雜度

更新時間:2020-12-04 17:53:38 來源:動力節點 瀏覽1213次

對于剛剛開始學習算法的小伙伴來說,第一次看見時間復雜度這個詞難免有點小疑惑,似乎是一個很抽象的東西,很難去理解。實際上算法時間復雜度是一個代表算法輸入值的字符串的長度的函數,它定性描述該算法的運行時間。

 

一個算法執行所耗費的時間,從理論上是不能算出來的,必須上機運行測試才能知道。但我們不可能也沒有必要對每個算法都上機測試,只需知道哪個算法花費的時間多,哪個算法花費的時間少就可以了。并且一個算法花費的時間與算法中語句的執行次數成正比例,哪個算法中語句執行次數多,它花費時間就多。一個算法中的語句執行次數稱為語句頻度或時間頻度。記為T(n)。

 

上面提到的時間頻度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)),它稱為算法的漸進時間復雜度,簡稱時間復雜度。

 

算法的執行時間是通過依據該算法編寫的程序在計算機上執行時所需要的時間來計算的,通常有以下兩種方法。

 

1.事后統計法:因為很多的計算機有精確的計時功能,所以可以在計算機中執行依據某一算法編寫的程序,從而計算出該算法的執行時間。但此時間又與所使用的編程語言,以及計算機的硬件和軟件等環境因素有關,有時容易掩蓋算法本身的優劣,因此很少使用。

 

2.事前分析估算法:通常用高級程序設計語言編寫的程序在計算機上運行時消耗的時間取決于下列因素。

① 算法選用何種策略。


② 問題的規模。


③ 所使用的程序設計語言,就同一個算法而言,用級別越高的語言實現,其執行的效率越低。


④ 編譯程序所產生的機器代碼的質量。


⑤ 機器執行指令的速度。

 

由上述因素可以看出,采用絕對的時間單位來衡量一個算法的效率是不合理的,因此我們撇開所使用的編程語言、計算機的硬件和軟件等環境因素,僅考慮算法本身效率的高低。即認為某一算法的執行時間只依賴于問題的規模,或者說是問題規模的函數。也就是說同一個算法的時間復雜度不是一成不變的,和輸入的數據形式依然有關系。而我們面試中如果被問道算法的時間復雜度是多少,實際上指的都是一般情況下的數據形式。


算法復雜度分為時間復雜度和空間復雜度。本文我們主要介紹的是算法的時間復雜度,想了解算法的空間復雜度可以觀看本站的數據結構和算法教程,帶你揭秘算法的各種神奇之處!

 


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 久久精品国产无限资源 | 亚洲综合在线播放 | 久久香蕉综合精品国产 | 一级特级女人18毛片免费视频 | 日韩欧美一中字暮 | 伊人色综合久久天天爱 | 特黄a大片免费视频 | 中文字幕免费视频精品一 | 国产亚洲一区二区三区在线 | 福利视频中文在线观看 | 国产欧美一区二区三区在线看 | 夜夜春夜夜爽久久 | 国产福利91 | 亚欧有色亚欧乱色视频 | 国产一区二区三区在线免费观看 | 在线观看亚洲精品专区 | 韩国一级理黄论片 | 久久se精品一区二区国产 | 精品国产一区二区三区www | 国产一区二区三区不卡免费观看 | 国产一在线精品一区在线观看 | 精品视频自拍 | 国产亚洲精品色一区 | 成年性午夜免费视频网站不卡 | 狠狠操天天操视频 | 亚洲视频在线一区二区三区 | 婷婷六月激情在线综合激情 | 久草最新网址 | 日韩va亚洲va欧美va浪潮 | 玖玖在线| 亚洲一区在线免费观看 | 日韩午夜免费视频 | 国产91在线|亚洲 | 亚洲欧美国产视频 | 国产精品色片 | 毛片爱做的片 | 69成人影院 | 欧美图片一区二区三区 | 国产成人青青热久免费精品 | 亚洲免费视频观看 | 亚洲国产精品久久久天堂 |