亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        歸并方式的多線程快速排序算法

        2010-12-31 00:00:00宋鴻陟張麗霞鄧展鴻
        計算機教育 2010年8期


          摘要:本文基于Java平臺針對經(jīng)典快速排序提出改進方案,使用歸并的思想對快速排序作了多線程優(yōu)化,并對單、多線程下的快速排序進行了對比測試和分析。結(jié)果表明,通過多線程優(yōu)化,快速排序在雙核主機上對5千萬個隨機整型數(shù)據(jù)進行排序的速度是單線程的1.6倍,說明了該優(yōu)化方法的有效性。該方法思路直觀、容易理解,宜作為多核技術(shù)教學案例。
          關(guān)鍵詞:快速排序;歸并;多線程
          文章編號:1672-5913(2010)08-0149-04
          中圖分類號:G642
          文獻標識碼:A
          
          1 快速排序
          
          排序是計算機科學的重要內(nèi)容,是計算機及相關(guān)專業(yè)的學生必須掌握的一類基礎(chǔ)算法??焖倥判蛞云鋬?yōu)異的性能成為各種排序算法中的佼佼者。在日常講授、學習以及實現(xiàn)快速排序算法時,大都是以單線程的模式進行。隨著多核技術(shù)的發(fā)展與普及,對快速排序作多線程優(yōu)化以進一步提高排序性能,可以使學生更好地掌握多線程思想。Java是當今的主流編程語言之一,具有優(yōu)秀的跨平臺性。在Java平臺上對快速排序進行多線程優(yōu)化,可適用于多種軟硬件環(huán)境,應(yīng)用前景廣闊。筆者首先基于Java平臺對快速排序在小數(shù)據(jù)量情況下的優(yōu)化做了測試,得到了一個可行的優(yōu)化方案,然后在Java中實現(xiàn)了歸并方式的多線程快速排序,并在不同的軟硬件環(huán)境下做了測試。測試結(jié)果表明,多線程排序能大幅提高排序的速度。
          
          
          1,1算法概要
          快速排序(Quicksort)由Hoare提出,是現(xiàn)今最快的內(nèi)部排序算法之一,其過程主要分為三個階段:
          (1)在待排序的序列中找出一個樞軸;
          (2)根據(jù)樞軸將待排序的序列劃分成兩個不相交的子序列,其中一個子序列里的關(guān)鍵字全部不小于樞軸,另一個子序列里的關(guān)鍵字全部不大于樞軸;
          (3)分別對兩個子序列遞歸進行快速排序,直到劃分出的子序列的長度為1。
          
          1,2改進
          快速排序的平均性能非常優(yōu)秀,但是在最壞情況下,即序列已基本有序或是基本逆序時,快速排序的性能會變得非常低。而且由于采用遞歸來進行排序,當序列的長度較小時,頻繁的遞歸操作也會影響排序的性能。許多文獻對快速排序的改進提出了建議。Singleton在文獻中使用“三點取中”方法,用序列中的頭、尾和中點這三個關(guān)鍵字的中間值作為樞軸,有效地避免了快速排序在最壞情況下的性能惡化。在內(nèi)存使用上,快速排序需要使用額外的??臻g來進行遞歸操作。為減小棧的深度,在通過劃分之后得到的子序列中,應(yīng)優(yōu)先對較小的子序列遞歸進行排序。另外,快速排序的遞歸操作在序列長度較小時會影響排序的效率,應(yīng)該使用其他非遞歸算法來處理小序列。
          
          對小序列進行處理時,使用直接插入排序是有效的改進方法。此處通過測試來尋找從快速排序切換到插入排序的時機,為此設(shè)置一個閾值M,當快速排序過程中劃分出的子序列的長度小于或等于M時,不再遞歸調(diào)用快速排序而使用直接插入排序,以避免對小序列排序時的頻繁遞歸。這里M值的選取非常重要,會對排序的速度產(chǎn)生較大的影響。因為當M值偏小時,相當于沒有做改進;如果M值偏大,則無法體現(xiàn)快速排序的優(yōu)勢。M值的選取與計算機軟硬件因素相關(guān),這里對M選取了一組值f4,8,16,32,64,128,256}在Java平臺下做測試,令M分別取這些值來對一個長度為

        中文字幕人妻偷伦在线视频| 91精品国产福利在线观看麻豆| 人妻少妇被粗大爽.9797pw| 开心五月激情综合婷婷色| 最新国产一区二区精品久久| 欧美亚洲h在线一区二区| 青青草视频在线观看精品在线| 内射人妻无套中出无码| 亚洲精品无码久久久久av麻豆 | 久久精品无码一区二区乱片子| 精品女同一区二区三区不卡| 日本区一区二区三视频| 精品人妻中文无码av在线| 日日人人爽人人爽人人片av| 综合久久青青草免费观看视频| 国产精品国产三级国产专播下 | 欧美一性一乱一交一视频| 女同亚洲女同精品| 日本熟女人妻一区二区三区| 亚洲久悠悠色悠在线播放| 免费中文熟妇在线影片| 国产精品无码久久久久免费AV| 男女动态视频99精品| 狠狠色丁香婷婷综合潮喷| 国产在线无码制服丝袜无码| 鲁丝一区鲁丝二区鲁丝三区| 97精品熟女少妇一区二区三区| 狠狠色噜噜狠狠狠777米奇小说 | 国产av熟女一区二区三区密桃| 亚州av高清不卡一区二区| 国产精品久久久久免费a∨不卡| 亚洲天堂99| 久久精品这里就是精品| 大陆老熟女自拍自偷露脸| 国产丝袜在线精品丝袜| 亚洲欧美国产日产综合不卡| 日本女优久久精品观看| 熟妇熟女乱妇乱女网站| 国产成人精品电影在线观看18| 亚洲视频一区二区蜜桃| 欧美激情视频一区二区三区免费|