備案號:遼ICP備19007957號-1
聆聽您的聲音:feedback@highmark.com.cn企業熱線:400-778-8318
Copyright ?2015- 海馬課堂網絡科技(大連)有限公司辦公地址:遼寧省大連市高新技術產業園區火炬路32A號創業大廈A座18層1801室
表示二進制搜索的時間復雜性。我們可以使用合并排序對數組進行有效排序。這種排序算法的一個例子是添加到/刪除一個鏈表。對于一個排序算法來說,合并排序的時間復雜度是最好的:O(log N) 。本課將介紹三種最流行的算法,即搜索、排序和在鏈表中添加/刪除。眾多其他的算法共享這些算法例子背后的概念。通過對這三個算法實例的講解,我們可以打下堅實的基礎,并在未來自信地接受新的算法挑戰。
算法實例#1:二進制搜索
基本的搜索算法被稱為二進制搜索,它接受一個排序的數組作為輸入。它返回我們想找的值的索引。下面的步驟是我們如何完成這個任務的:
找到排序后的數組的中心點。
將中點與興趣值進行比較
在數組的右邊進行二進制搜索,如果中點大于該值。
如果中點小于興趣值,在數組的左邊進行二進制搜索。
繼續下去,直到感興趣的值等于平均值,或者直到清楚地發現該事項不在數組中。
從上面的階段可以看出,我們的解決方案可能是遞歸的。在每次迭代中,直到我們的數組只包括我們感興趣的值,我們將向我們的函數提供一個較小的品種。為了從原始數組中檢索出我們項目的索引,我們必須為我們的集合建立正確的索引,并在每次迭代中保持對索引偏移的跟蹤。
O是二進制搜索(login)的時間復雜性。這一點從以下事實中可以看出:即使我們的輸入數組的大小增加了一倍,我們的方法仍然只需要增加一次迭代就可以達到預期的結果。我們把二進制搜索的重要性歸結為計算機科學中的一種屬性算法。
算法的例子#2:合并排序
與 "分而治之 "類似,合并排序可以有效地對數組進行排序。我們可以在下面的階段使用合并排序的實現。
如果數組只有一個元素,則返回,因為我們已經對它進行了排序。
把一個數組分成兩半,直到不能再分為止。
一旦我們有了初始排序的數組,我們就把較小的數組按相同的順序合并。
我們將設計兩種方法來實現合并排序。一種是處理數組的除法,另一種是將兩個未排序的數組重新合并成一個排序的數組。我們反復調用分割函數(merge sort),直到我們的集合只有一個成員。然后我們再把它們合并一次,再給你我們的排序數組。
一個排序算法的最佳時間復雜度是O(N log N),而合并排序就擁有這樣的復雜度。通過使用分割和征服的策略,我們大大增加了排序的有效性,而排序本來就是一個昂貴的計算過程。
算法的例子#3:從鏈接列表中添加和刪除項目
作為計算機科學的一個重要組成部分,鏈表以其恒定時間的插入和刪除而聞名。通過采用節點和指針,我們可以比利用數組更快速有效地完成一些任務。
Ruby中的鏈接列表
一個鏈接列表由包含一些數據的節點和一個指向它之后的節點的指針組成。我們可以在Ruby中通過定義一個名為Node的結構來表達這一點,其參數為:數據和下一個Node。唯一要做的就是指定兩個方法,插入Node和刪除Node,這兩個方法分別接受一個頭部節點和一個要插入或刪除的地方。我們希望插入的節點結構是插入節點函數的一個額外參數,名為Node。然后我們進行循環,直到我們到達我們想要添加或刪除的地方。一旦我們到達目的地,我們就修改指針以反映我們的插入或刪除。
當利用鏈表而不是數組時,我們可以從一個集合的中心刪除項目,而不需要重新組織內存中的數據結構的其余部分。通過選擇最適合我們要求的數據結構,我們可以實現最大的效率。
海馬課堂留學生作業輔導,根據學生的輔導需求匹配背景相符的專業老師。1V1個性化備課,雙語教學,實時輔導,講解相關知識點和解題思路,提供大型作業任務的解決方案,輔導計算機編程語言操作,教授學生高效完成PPT和演講稿,針對性解決留學生各類作業中遇到的困擾,提高作業成績!
閱讀原文:http://www.brains-tank.com/news/12570_62.html
版權作品,未經海馬課堂 highmarktutor.com 書面授權,嚴禁轉載,違者將被追究法律責任。
備案號:遼ICP備19007957號-1
聆聽您的聲音:feedback@highmark.com.cn企業熱線:400-778-8318
Copyright ?2015- 海馬課堂網絡科技(大連)有限公司辦公地址:遼寧省大連市高新技術產業園區火炬路32A號創業大廈A座18層1801室
hmkt088
99精品免费| 少妇xxxx| 无码少妇一区二区| 亚洲狠狠干| 日本人妻丰满熟妇久久久久久| 在线看黄网站| 国产精品久久久久久久9999| 日韩无码影片| 中文字幕在线观看一区二区| 这里都是精品| 亚洲性爱视频| 国产一级视频| av黄色| 亚洲视频一区二区三区| 91人人操| 乱伦综合网| 久久久久久国产精品| 亚洲无码免费| 91伊人| 一级无码视频| 99精品99| 91视频一区| 91精品久久香蕉国产线看观看| 欧美aa视频| 波多野结衣一区| 亚州成人| 色综合99久久久无码国产精品| 成人毛片18女人毛片免费| 亚洲91| 国产精品黄色片| 久久综合热| 五月天色综合| 中文字幕在线观看| 波多野结衣一区二区三区| 五月天综合| 日韩黄网| 天天天天干| 乱伦五月天| 日日操夜夜| 中文字幕一区二区三区四区| 亚洲人天堂|