999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺談計算機算法優劣

2018-09-26 15:12:32周哲周翔
贏未來 2018年10期
關鍵詞:高效計算機

周哲 周翔

摘要:1965年哈特馬尼斯(Juris Hartmanis)和斯坦恩斯提出了算法復雜度的概念,從此算法有一個正規的評價標準,隨著計算機技術的fazhan1,計算機科學家、算法分析之父高德納(Don Knuth)對算法的復雜度提出了量化的衡量的指標。全球科技行業以計算機科學家、算法分析之父高德納(Don Knuth)的為準。筆者下述對計算機科學家、算法分析之父高德納(Don Knuth)的復雜度概念進行解析。

關鍵詞:計算機;算法;高效

一、高效的算法到底有幾個部分呢?

高德納的思想主要包括這三個部分:

1. 在比較算法的快慢時,需要考慮數據量特別特別大,大到近乎無窮大時的情況。為什么要比大數的情況,而不比小數的情況呢?因為計算機的發明就是為了處理大量數據的,而且數據越處理越多。比如我和同學們做砸了的那件事,就是沒有考慮數據量會迅速劇增。

2. 決定算法快慢的因素雖然可能很多,但是所有的因素都可以被分為兩類。第一類是不隨數據量變化的因素,第二類是隨著數量變化的。例如:有一種大小排序的算法,它的運算次數是10倍的N平方,其中N是要排序的數字的數量。前面的那個10倍是個常數,和N的大小顯然沒有關系,10個數排序是如此,一億個數排序時也是如此。而后面的N平方自然和N有關系了。高德納講,我們在研究算法時,不必考慮前面那個不變的常數,它是10倍,還是1倍,或者是100倍,只需要看后面那個變化的因素即可。因為N這個數趨近于無窮大時,前面那個不變的常數的影響是微乎其微的,算法的速度主要由后面一個因素決定。比如,當N=10的時候,N平方就是100;N=100,N平方就是1萬;N=1萬,N平方就是一億……總之,N平方這個因子的變化非常快。更廣泛地講,任何隨著N變化的因素,通常會造成量級的差異。

二、高效率的算法就要少做事情

,對于一大堆無序的數字,從中隨機挑選一個,比如是53,這個被隨機選上的數字被稱為樞值(樞紐的樞),接下來,將所有要排序的數字分成兩部分,第一部分是大于等于樞值53的,第二部分是小于樞值53的。在第一步完成后,一大堆無序的數字就變得稍微有序一點了。第二步,從上面得到的兩堆數字,分別采用第一步的方法各自再找一個樞值。對于第一堆,由于所有的數字都比53大,至少也等于53,因此,第二次隨機挑選的樞值肯定是一個大于53的數字,比如79;類似地,對于第二堆,由于所有的數字都小于53,因此第二次隨機挑選的樞值肯定小于它,,

例如:4,接下來我們把倆對數字再平均分成兩堆的數字序列,在這樣的情況下我們現在有了四堆數字,這樣我們就很快查找到你想要的4號,使用類似的方法,我們對全校20000名高中生中,讓全部同學到一個足夠裝下全部人的教室中上課,從中選出倆名尖子生,如果使用冒泡排序,那我們需要每位學生與全部學生相比,而使用上述的辦法,一堆變兩堆,兩堆變四堆,四堆變八堆等等,方法:把2萬人放到10所學校中,每所學校只有兩千人,從各個學校先各自挑出學習尖子,再彼此進行比較,這就有效得多了。這就是歸并排序原理。

快速排序是通常情況下最好的算法,但是,在極端的情況下,它的復雜度是N平方,和冒泡排序一樣糟糕。而歸并排序,即使在最壞的情況下,也能保證N乘以log(N)的復雜度,當然工程師們會想一些方法防止這種糟糕情況的發生。

三、算法高效率的本質

老師統計同學們的期末考試成績,發現把一個班上五十個人的成績排序絲毫沒有錯誤,并不容易。后來我們發現比較可靠的辦法其實是下面兩種笨辦法:

高德納的思想,分析一下上述算法的復雜度。第一種算法很容易估算,50個人中找出最大的要比較49次,第二大的要比較48次,以此類推,大約是1200多次,是50的平方的一半左右。第二種方法復雜度,我們把50的整數擴展到任何整數N,排雷復雜度都是N的平方。在計算算法復雜度時,我們不關心一點點的差別,例如:幾倍在計算機的世界中就是很小的數字。因此計算機科學家的思維與我們的思維不同在與,高德納干脆刪除了前面的常數因子,只保留后面的變量,他用了微積分中的一個概念——大寫的O的概念,所有同等復雜度的算法,都被認為它們在"大O的概念"下是相等的。比如,上述冒泡排序算法的復雜度是O(N平方),插入排序也是O(N平方),屬于同一個量級。此外,早期的計算機科學家還想出了其他的排序算法,復雜度都和它們差不多,在一個量級。

就是對兩個組的排序。顯然我們不應該再用冒泡排序。聰明一點的人馬上會想到,既然能分成兩組,就能把每個小組再分為兩組,即分成四組,重復上面的算法,分別排序再合并。這樣就能省3/4的時間。再接下來,四組可以分為八組,能省7/8的時間,八組可以分為十六組,時間就不斷省得越來越多。分到最后每個小組只剩下兩個人的時候,其實就不用排序了,只要比較一次大小即可。這種方法其實可以理解為兩個過程,先是自頂向下細分,再自底向上合并。那么這種算法的復雜度等于多少呢?它相當于N乘以log(N),log(N)就是N的對數函數,大家不必在意N乘以log(N)是什么東西,只要記住它和N平方不一樣,而且這個復雜度比前面的N平方小很多就行了。

好的計算機算法總是在極大的提升計算機的效率,效率是成千上百倍的提升,而不是去省掉幾倍的速度的算法,所以我們在計算機編程時,要對計算機算法的方法和規律要熟記并且運用,這樣才可以寫出高效的代碼。

參考文獻:

[1]許興權.淺議基于計算機算法的新型教學模式[J].教師,2013(26):103.

[2]劉運龍,謝忠明.計算機算法教學初探[J].教師,2010(15):74.

猜你喜歡
高效計算機
計算機操作系統
穿裙子的“計算機”
趣味(數學)(2020年9期)2020-06-09 05:35:08
基于計算機自然語言處理的機器翻譯技術應用與簡介
科技傳播(2019年22期)2020-01-14 03:06:34
計算機多媒體技術應用初探
科技傳播(2019年22期)2020-01-14 03:06:30
信息系統審計中計算機審計的應用
消費導刊(2017年20期)2018-01-03 06:26:40
如何實現小學語文課堂教學的高效化
為小語課堂“瘦身”,為學生語文素養增“肥”
農田水利工程高效節水灌溉發展思路初探
提高提問的有效性, 構筑高效的語文課堂
考試周刊(2016年77期)2016-10-09 10:47:06
打造務實、創新、高效的語文課堂
考試周刊(2016年76期)2016-10-09 08:32:41
主站蜘蛛池模板: 亚洲黄网在线| 波多野结衣无码中文字幕在线观看一区二区 | 国产美女人喷水在线观看| 亚洲av片在线免费观看| 成人伊人色一区二区三区| 少妇露出福利视频| 国产女同自拍视频| 波多野结衣国产精品| 精品久久久久无码| 老司机aⅴ在线精品导航| 手机在线免费不卡一区二| 成人va亚洲va欧美天堂| 亚洲成人高清无码| 凹凸精品免费精品视频| 91在线一9|永久视频在线| 91久久国产成人免费观看| 国产国拍精品视频免费看| 丁香综合在线| 欧美亚洲国产日韩电影在线| 人妻出轨无码中文一区二区| 国产亚洲精品91| 亚洲黄色高清| 亚洲视频a| 一区二区偷拍美女撒尿视频| 这里只有精品免费视频| 国产高清国内精品福利| jizz在线免费播放| 日韩亚洲综合在线| 一本久道久久综合多人| 毛片大全免费观看| 日韩精品免费一线在线观看| 波多野结衣一区二区三区88| 国产成人综合日韩精品无码首页| 天天综合色网| 日韩精品高清自在线| 亚洲成a人片77777在线播放| 亚洲国产黄色| 亚洲欧美精品在线| 亚洲日韩久久综合中文字幕| 国产农村妇女精品一二区| 不卡网亚洲无码| 亚洲欧洲日韩国产综合在线二区| 视频国产精品丝袜第一页| 97色婷婷成人综合在线观看| 国产精品lululu在线观看| 国产精品久久久精品三级| 亚洲美女操| 亚洲视频免| 国产在线一区视频| 在线国产毛片| 国产一区二区影院| 91久久国产综合精品| 国产精品成人久久| 久无码久无码av无码| 国产丝袜91| 免费无码又爽又黄又刺激网站| 性网站在线观看| 一级毛片免费观看不卡视频| 亚洲国产无码有码| 日韩少妇激情一区二区| 韩国福利一区| 国产成人久久777777| 成人午夜免费观看| 在线欧美a| 天堂岛国av无码免费无禁网站| 丁香五月亚洲综合在线| 伊人久综合| 国产产在线精品亚洲aavv| 国产精品吹潮在线观看中文| 香蕉蕉亚亚洲aav综合| 亚洲欧美色中文字幕| 久久精品亚洲中文字幕乱码| 久久久久免费看成人影片 | 色综合中文综合网| 亚洲精品黄| 成人免费午间影院在线观看| 久久人搡人人玩人妻精品 | 久久免费看片| 国产国模一区二区三区四区| 国产精品免费p区| 园内精品自拍视频在线播放| 国产va在线观看|