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

k分搜索的時間復雜度分析

2021-03-08 00:25:00傅曉航鄭歡歡
計算機技術與發展 2021年2期
關鍵詞:分析

傅曉航,鄭歡歡

(南京理工大學 計算機科學與工程學院,江蘇 南京 210094)

0 引 言

分治算法是一個將規模較大問題分解為多個規模相同子問題的算法[1]。許多算法都是基于分治策略實現的,例如搜索、快速排序、歸并排序、TOP-K算法等等;此外分治策略能夠應用于許多算法的優化,例如防火墻規則匹配算法、蟻群算法、并行碰撞檢測算法等等,相關研究如文獻[2-5]。分治策略的核心思想是將一個問題等分為多個形式相同的子問題,圖1所示為每次將問題劃分為兩個相等子問題時的分治算法。為提高算法的性能,該文將研究將原問題分解為多少個子問題時分治算法的效率最高。

圖1 每次劃分兩子問題的分治算法

該文以搜索為例,搜索是指在一個排好序的數組中尋找與給定數值x相等的元素,很容易想到的方法是將數組遍歷,但是遍歷的復雜度為O(n),當數組的規模n很大時,查找次數將會很大。

二分搜索是將數組每次分為相等的兩部分,將待查元素x與數組中點處的元素a[n/2]比較,若a[n/2]=x則搜索成功;若a[n/2]>x,則待查元素x在數組左半區;若a[n/2]

根據分治策略的研究可以想到,如果每次將數組分為相等的更多部分,比如三部分甚至是k部分,算法性能還會不會有所提升。每次將數組分為更多的部分,則每趟查找能夠將數組縮小到更小的范圍,然而每趟需要進行額外的查找,從定性分析的角度,總的查找次數增加或減少均是有可能的。隨著k的增加,平均查找次數可能先減少,達到最低后再增加;也有可能一直增加,后續將從定量分析的角度,對k分搜索的時間復雜度進行證明。

該文將對二分、三分、四分搜索所需的平均查找次數進行復雜度分析,并進行比較,尋找規律,最后分析出k分搜索的時間復雜度。通過將每種情況下的查找次數求和并平均,得到算法的平均查找次數,進而得到其時間復雜度。可以證明,k分搜索的時間復雜度為O(klogkn),易知klogkn是單調遞增函數,因此二分搜索是效率最高的算法。此外,當k=n時,k分搜索退化為遍歷,時間復雜度退化為O(n)。

1 二分搜索與三分搜索

在本節中,首先通過分析平均查找次數的方式分析二分搜索的時間復雜度,然后按照相同的方式分析三分搜索的時間復雜度,最后對比兩種算法在實際數據下所需要的查找次數,并分析兩者復雜度差異的原因,為尋找k分搜索的規律做鋪墊。

258 Analysis of health-related quality of life of elderly people living alone in Shanghai

1.1 二分搜索

二分搜索法,是通過不斷縮小解可能存在的范圍,從而求得問題最優解的方法。二分搜索可應用于二叉搜索樹、密度峰聚類、網絡拓撲探測等算法,相關研究如文獻[6-9]。二叉搜索樹的左子樹若不為空,則其上的所有節點的值均小于根節點,同樣,若右子樹不為空,則其上的所有節點的值均大于根節點。二叉搜索樹便是利用了二分搜索的性質,既能夠快速地查找,又能方便地添加與刪除節點,是一種高效的數據結構。

二分搜索能夠應用于兩種常見的問題中:一是應用于最優解問題,求最小的x使得x滿足條件M(x),可以用二分搜索來求得最小的x[10];二是在有序數列中查找值,即在一個排好序的數列中尋找與給定值相等的元素。該文主要通過后者來分析二分搜索的時間復雜度以推出k分搜索的時間復雜度。

社會期望作為一項重要的人格特證,是兒童社會性發展的重要方面,在兒童的成長發展中發揮著不可忽視的作用。兒童的社會期望不僅與兒童的學業成績和學校表現有著密切關系[3],也會影響兒童對自我的評價[4]和安全依戀的形成[5]。因此,有必要對小學兒童的社會期望水平進行調查,對其發展狀況進行系統全面的分析研究,進而為兒童的家庭和學校教育提供可能的參考依據。

二分搜索的方法如圖2所示,先將待查元素x與二分之一處的元素比較,若相等,則查找成功;若該元素大于x,則繼續在數組左半區查找;若該元素小于x,則繼續在數組右半區查找。這樣每次都可以將搜索范圍縮小一半。

圖2 二分搜索的過程

50例ASO患者實驗觀察指標以SPSS19.0計算。護理工作滿意度以%形式展開,采用χ2檢驗;飲食知識掌握以及護理知識掌握評分以(±s)形式展開,進行t檢驗。P<0.05證明差異有統計學意義。

1. low←1;high←n;j←0;

2. while(low≤high)and(j=0);

3. mid←(low+high)/2;

2.3 孕晚期血清sFlt-1、PLGF及其比值與子癇前期發病時間的關系 在11例發病的高危孕婦中有早發型子癇前期孕婦2例,晚發型子癇前期孕婦9例。早發型子癇前期組血清log(sFlt-1)的均值為3.82 pg/ml,晚發型組為3.29 pg/ml。血清log(PLGF)的均值在早發型及晚發型子癇前期組中分別為1.83 pg/ml、2.27 pg/ml。血清log(sFlt-1/PLGF)比值在早發型及晚發型子癇前期組中均值分別為1.99、1.01。因早發型子癇前期組孕婦例數過少,數據不符合正態分布,未進行統計學分析。

卞遷與齊薇(卞遷,齊薇等,2009)指出目前最常用的眼動記錄方法是無創的視頻記錄法。利用眼動儀進行研究時測試參數一般包括:注視點軌跡圖、熱點圖、關注區域、注視點個數、首個注視點的注視時長、首次進入AOI的時間、每次訪問的平均時間等。一項研究應根據研究內容和研究目標選擇2-3個測試參數。

S=(i-1)×2i+1

5. else ifx

6. else low←mid+1;

7. end while;

8. returnj。

要堅持走開放型、創新型和高端化、信息化、綠色化發展的新路子,構建現代產業新體系,從中尋找突破口和切入點,做好產業轉型升級的統籌規劃,進一步明晰產業轉型升級的總體思路、目標任務、方向路徑、工作重點和落實機制,揚長避短發揮比較優勢,加快推動產業結構由中低端向中高端邁進。推進高原特色農業現代化,促進三大產業融合發展,提高質量效益和競爭力。實施“中國制造2025”云南行動計劃,有選擇性地承接東部地區出口加工業轉移,探索“共建園區”或“飛地經濟”,實行引進產業與本地特色有優勢產業的有機融合、聯動發展。

圖3所示為二分查找過程的判定樹,要在一個有序數列[2 4 6 9 11 15 18 22 24 31 35]中尋找值為22的元素,首先將22與數組中點處的元素15比較,22大于15,則待查元素在數列右半區;再將其與數列右半區中點處的元素24比較,發現22小于24,則繼續在左半區查找;而22大于左半區中點處的元素18,則繼續在右半區查找,最終找到22。

圖3 二分搜索查找過程的判定樹

時間復雜度的分析以分析每個元素被查找到的概率的方式進行。經過1次查找就能被找到的元素個數為20,經過2次查找就能被找到的元素個數為21,以此類推,經過i次查找就能被找到的元素個數為2i-1。設S為所有元素被查找到所需要的總次數,則有:

S=1×20+2×21+3×22+…+(i-1)×

S=1×30+2×31+3×32+…+(i-1)×

(1)

通過錯位相減法可以求解式(1),得到:

4. ifx=A[mid] thenj←mid;

(2)

由1+2+4+…+2i-1=2i-1≥n,可以得到i≤log2(n+1),代入式(2)可得:

S≤(log2(n+1)-1)(n+1)+1

(3)

每個元素被查找到的概率為1/n,則時間復雜度T(n)=S/n,代入得:

11. end while

(4)

即二分搜索平均查找次數的時間復雜度為log2(n+1)-1。通過圖4可以看出,二分搜索與線性查找相比,時間復雜度由O(n)降到了O(log2n),效率得到了明顯的提升。

圖4 二分搜索與遍歷的時間復雜度的比較

利用二分搜索高效查找的性質,能夠將二分搜索應用于一種數據結構即二叉搜索樹,又稱二分搜索樹、二叉排序樹,如圖5所示。二叉搜索樹是一種二叉樹,對于樹中的每一個節點,若其左子樹存在,則根節點的值不小于其左子樹中每一個節點的值;若其右子樹存在,則根節點的值不大于其右子樹中每一個節點的值,二叉搜索樹的相關研究如文獻[11-14]。若二叉搜索樹為滿二叉樹,則其搜索的時間復雜度為O(log2n),若每層只有一個節點,則復雜度為O(n),因此二叉搜索樹的時間復雜度為O(log2n)~O(n)。

(5)

而二分搜索平均僅需20次即可查找成功,極大地提高了算法的性能。

丁珰又道:“天哥他確有過犯,自己送了命也就罷了,最可惜石莊主夫婦這等俠義仁厚之人,卻也要賠上兩條性命。”

例如,對一個規模為1e6的問題,遍歷需要的平均查找次數為:

豎爐密封性較好,通常難以知曉豎爐內部爐墻的實際工況,可使用Raytek手持式紅外測溫儀檢測銅磚部位的溫度,且關注超過500 ℃的狀況,再根據爐殼發紅現象進行綜合判斷,該測溫儀具有響應時間快、非接觸、操作簡單、使用安全及壽命長等優點。

二分搜索的偽代碼如下:

圖5 二叉搜索樹

二叉搜索樹能夠做到與線性二分查找一樣的時間復雜度O(log2n)。線性二分查找需要保證待查序列是單調的,因此增加或者刪除節點時,需要較多的操作;而二分搜索樹能夠高效地對節點進行增加或者刪除操作,是對二分搜索進行優化的一種數據結構。

后續將繼續分析,若將問題劃分為更多的子問題,即二分搜索、k分搜索,能否更好地提升搜索算法的性能。

1.2 三分搜索

三分搜索的方法如圖6所示,先將待查元素x與三分之一處的元素比較,然后將x與三分之二處的元素進行比較[15]。若相等,則搜索成功;若x小于第一個元素,則繼續在左三分之一部分查找;若x大于第一個元素小于第二個元素,則繼續在中間三分之一部分查找;若x大于第二個元素,則繼續在右三分之一部分查找。

圖6 三分搜索的過程

三分搜索每次能將查找范圍縮小三分之一,繼續查找,直到找到待查元素x。

現代服裝設計中創新應用傳統文化元素與藝術價值,第一個必要性體現在,這是現代服裝設計創新突破的需要。民族的也是世界的,傳統文化為當代的服裝設計提供了源源不斷的設計思路和設計理念,面對著當前高速發展的時代和服裝設計行業的加速更新和變革,行業內部的更新換代以及行業內部的競爭也愈發的激烈,面對這樣的現實狀況,現代服裝設計師在日常工作的過程當中所需要巨大的靈感,而這些靈感則必須是要適應市場的,有可落地實施的價值的,基于這樣的現實考量,從傳統文化當中吸取營養就顯得非常必要。

其偽代碼如下:

1. low←1;high←n;j←0;

2. while(low≤high)and(j=0);

3. midl←low+(high-low)/3;

4. midr←low+2(high-low)/3;

5. ifx

由于委派制在某種程度上的“過渡性”和“不徹底性”,審計人員的專業化、系統化的培訓較少,人員專業素養提升較慢,難以勝任日益復雜的審計業務要求。

6. else ifx=A[midl] thenj←midl;

7. else;

8. ifx

9. else ifx=A[midl] thenj←midr;

10. else low←midr+1;

log2(n+1)-1

12. returnj。

例如對于一個有序數列[2 4 6 9 11 15 18 22 24 31 35 39],尋找與值22相等的元素,首先將22與三分之一處的元素9、三分之二處的元素24比較,易知9<22<24,則繼續在中間三分之一部分[11 15 18 22]查找;再分別與11和18比較,發現大于18,則在右三分之一部分查找,最終找到元素22。

時間復雜度的分析方法與二分搜索類似,在查找過程中,第1趟需要找2次,能夠被找到的元素有2×30個,第2趟需要找2×2次,能夠被找到的元素有2×31個,第i-1趟需要找2×(i-1)次,能夠被找到的元素有(i-1)×3i-2個,第i趟需要找2×(i-2)次,能夠被找到的元素有i×3i-1個。每個元素被查找到的概率為1/n,則時間復雜度T(n)=4S/n,其中:

2i-2+i×2i-1

3i-2+i×3i-1

(6)

通過與二分搜索相同的方法可以得到:

2log3(n+1)-1

(7)

即三分搜索平均查找次數的時間復雜度為2log3(n+1)-1。

1.3 二分搜索與三分搜索的比較

由1.1節和1.2節可知二分搜索的時間復雜度為log2(n+1)-1,三分搜索的時間復雜度為2log3(n+1)-1,易知log2(n+1)-1<2log3(n+1)-1,故二分搜索的效率更高。圖7為隨著數組規模n的增長,兩者時間復雜度的比較。

圖7 二分與三分搜索時間復雜度的比較

表1為在實際數據下,分別使用規模為100、1 000、10 000、100 000的數組,二分搜索與三分搜索所需的查找次數。雖然有個別情況三分所需次數更少,這是因為被查找的位置恰好在三分點上,但從總體上看,還是二分所需次數更好。

表1 二分與三分搜索在實際數據下的比較

無論是從平均查找次數的復雜度分析還是通過實例分析都可以看出二分搜索比三分搜索的效率更高。與二分搜索相比,三分搜索雖然每次將待查數組縮小到更小的范圍,但是二分搜索每趟只需要查找一次,即中點處的元素,而三分搜索需要兩次,即三分之一與三分之二處的元素,每趟搜索就增加了一次查找,隨著搜索次數的增加,三分搜索所需要的額外查找次數越來越多。因此,三分搜索與二分搜索相比,平均查找總次數更多,時間復雜度更高。

2 k分搜索

為了找出k分搜索的復雜度,首先分析四分搜索以找出規律,分析方式同上,可以得出:

中國現代民俗學大致經歷了從事象研究到事件研究的范式轉換,但這是遠遠不夠的,王霄冰從民眾群體(民)與知識體系(俗)之間的關系入手,提倡關注“民俗事件中的社會關系”,這相比“語境中的民俗”的提法而言指向更加明確。不過還應注意的是,“熟人社會”內部借助民俗活動對已有社會關系的刷新或調整,與“生人社會”借助民俗活動而達成的開放式的社會關系,雖然都屬于多主體之間的民俗關系,但其差異甚為明顯,加以區別是必要的。民俗在“熟人社會”與“生人社會”所承擔的不同角色,啟發我們應在更廣泛的社會視野中體認民俗。

(8)

則時間復雜度為:

3log4(n+1)-1

m_Server.CertificateEvent += new certificateValidation(m_Server_CertificateEvent);//定義服務證書

(9)

可以看出,四分搜索與三分搜索相比,時間復雜度再一次增加,據此推測,k分搜索的時間復雜度是隨著k的增加而增加的,以下過程證明了這一點。

對于k分搜索有:

(10)

時間復雜度為:

(11)

上式可近似為(k-1)logk(n+1)-1,隨著k的變化,時間復雜度的變化如圖8所示。

圖8 隨著k的升高k分搜索時間復雜度的變化

可以看出時間復雜度T是隨著k的增加而增加的,因此二分搜索的效率是最高的。雖然k分搜索每次能將搜索范圍減小到原來的1/k,即公式中的logk,但是每趟搜索需要查找k次,即公式中的系數k,因此,隨著k的增加,需要的查找次數也越來越多,因此時間復雜度也是增加的。

因此,各種算法如快速排序、極限情況,當k=n時即為遍歷。此時每次將搜索范圍縮小為1/n,只需一趟搜索,但是需要搜索n-1次,即與前n-1個元素均要進行比較,如圖9所示,與遍歷的方式是相同的。

針對在地下水取水井專項普查數據中不易獲得的數據,如機電井的打井時間、打井深度、水位埋深、水泵的各項指標數據及動態數據等,勃利縣采取了以下幾種方法獲取:

圖9 n分搜索

時間復雜度為:

(12)

如圖10所示,n分搜索與遍歷的復雜度n是十分接近或者說近似相同的。

圖10 遍歷與n分搜索的時間復雜度的比較

3 結束語

通過一系列的分析與證明,研究了二分、三分、k分搜索的時間復雜度,得出如下結論:(1)證明了k分搜索的時間復雜度是O(klogkn); (2)二分搜索是效率最高的搜索算法,對于k分搜索來說,k越大,算法效率越低。雖然三分、k分搜索與二分搜索相比每次查找能將待查找數組縮小到更小的范圍,但是二分搜索每趟只需要查找一次,三分搜索需要兩次,k分搜索需要k-1次,這就增加了查找次數,使得時間復雜度升高;(3)當k=n時,k分搜索退化為遍歷,時間復雜度退化為O(n)。

猜你喜歡
分析
禽大腸桿菌病的分析、診斷和防治
隱蔽失效適航要求符合性驗證分析
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
電力系統及其自動化發展趨勢分析
經濟危機下的均衡與非均衡分析
對計劃生育必要性以及其貫徹實施的分析
現代農業(2016年5期)2016-02-28 18:42:46
GB/T 7714-2015 與GB/T 7714-2005對比分析
出版與印刷(2016年3期)2016-02-02 01:20:11
網購中不良現象分析與應對
中西醫結合治療抑郁癥100例分析
偽造有價證券罪立法比較分析
主站蜘蛛池模板: 一级片一区| 中文字幕人成乱码熟女免费| 青青国产在线| 国产精品福利导航| 熟妇无码人妻| 视频一区亚洲| 亚洲一区二区在线无码| 五月激情综合网| 伊人精品视频免费在线| 国产伦片中文免费观看| 老司国产精品视频91| 久久久久免费精品国产| 亚洲无码熟妇人妻AV在线| 亚洲av综合网| 欧美翘臀一区二区三区| av无码一区二区三区在线| 亚洲国产精品无码久久一线| 免费人成黄页在线观看国产| 国产精品视频观看裸模 | 欧美视频在线播放观看免费福利资源| 99久久精品美女高潮喷水| 大香伊人久久| 国产成人综合久久精品下载| 99精品在线视频观看| 久久中文字幕不卡一二区| 中文字幕人成人乱码亚洲电影| 五月婷婷亚洲综合| 全午夜免费一级毛片| 国产综合亚洲欧洲区精品无码| 欧美三级日韩三级| V一区无码内射国产| 欧美激情二区三区| 午夜福利在线观看成人| 在线中文字幕网| 欧美日本中文| 人妻丰满熟妇啪啪| 亚洲精品成人7777在线观看| 亚洲视频二| 亚洲人成网站观看在线观看| 久久一级电影| 久久久久久尹人网香蕉 | 久久久久免费精品国产| 午夜精品久久久久久久无码软件 | 亚洲精品久综合蜜| 亚洲综合色区在线播放2019| 亚洲天堂网在线播放| 国产永久在线视频| 欧美一级在线| 美女无遮挡被啪啪到高潮免费| 国产91在线免费视频| 亚洲AV一二三区无码AV蜜桃| 国产精品视频免费网站| 538精品在线观看| 亚洲一区二区日韩欧美gif| 国产又色又刺激高潮免费看| 性欧美精品xxxx| 国产成人综合在线观看| 国产精品国产三级国产专业不| 蜜桃视频一区二区| 麻豆a级片| 婷婷色一二三区波多野衣| 亚洲欧美成人综合| 乱人伦视频中文字幕在线| 欧美成在线视频| 亚洲国产成熟视频在线多多| 国产高清毛片| 欧美成人看片一区二区三区| 999国内精品久久免费视频| 91黄视频在线观看| 国产激情在线视频| 午夜色综合| 99国产精品免费观看视频| 蜜臀AV在线播放| 视频一区亚洲| 欧美精品亚洲精品日韩专| 亚洲天堂成人在线观看| 免费精品一区二区h| 国产永久在线观看| 亚洲成人免费在线| 一区二区午夜| 青青青国产精品国产精品美女| 久久精品人人做人人|