国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 前端技巧|算法入門之“二分算法”

前端技巧|算法入門之“二分算法”

來源:千鋒教育
發布人:小千
時間: 2021-05-25 09:28:00 1621906080

      現如今面試大廠的前端崗位對于應聘者的算法技巧要求越來越高,現在的前端已經不僅僅是制作頁面就能夠交差的,所以掌握算法技巧是很重要的,下面小千就來給大家介紹一個二分查找算法。

前端

      二分查找

      所謂的算法都不是直接使用關鍵字indexOf fifindIncludes之類的, 都是原生循環來實現。

      二分 就是一拆為2 比如一個集合:let list = [1,2,3,4,5,6,7]

      二分就是在中間拆開變成兩個數組

      list1=[1,2,3,4]

      list2 =[5,6,7]

      二分用在哪些地方?

      主要有有序數組的查找,但是說 list= [1.....10] 可能肉眼就知道。但是如果list = [1000,20000] 要找查找某個數位置 就觀察不出來了,更甚至 list = 一千人的電話號碼 要查找某一個。二分不是絕對的性能優秀 所有的優秀的 都是對比的。

      現在有一個集合放1到10 要找9的的位置,普通的循環要找9次 二分找幾次呢?

      let list = [1,2,3,4,5,6,7,8,9,10]

      第一次中間數 5,6都可以 目標數9

      假設:

      middle =5

      target=9

      9>5 下次查找的區間 就用二分的后者 [5,6,7,8,9,10]

      接著

      middle = 7

      target = 9

      9>7 下次查找的區間 就繼續二分為 [7,8,9,10]

      繼續

      middle=8

      target=9

      9>8 下次查找的區間 [8,9,10]

      繼續

      middle = 9

      target= 9

      這樣就找到9的位置

      都是折疊查找 查找的次數比較穩定長度為8的集合 最多3次 就能找到數

      log 8=2

      就是同理 16個數 最多需要幾次 2 ? = 16 結果是4 最多查找四次

      log16= 4

代碼示例

      不管開頭還是結尾 還是中間 都穩定在 4次之前解決戰斗,同理 100個數 找一個數 最多7次 40億個數 找32次。你學會了嗎?

      以上就是二分查找算法的介紹了,是不是比你原本使用的方式更好呢?最后歡迎對前端開發感興趣的同學來到千鋒大前端培訓班了解我們的前端培訓課程,包含算法課程,全程名師面授,現在咨詢還有免費前端學習資料可以領取,快來找在線老師了解一下吧。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT