码迷,mamicode.com
首页 > 编程语言 > 详细

使用冒泡法进行排序然后用二分查找法找出33的位置 JS

时间:2019-10-11 21:46:44      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:for   tar   pre   顺序   二分   bin   tag   fun   search   

var data = [33, 86, 12, 9, 66, 5, 10, 45, 11, 3]; function sort(data){ var i=0; while(i<data.length-1){ for(var j=0;j<data.length-i-1;j++){ if(data[j]>data[j+1]){ var x=data[j]; data[j]=data[j+1]; data[j+1]=x; } } i++; } } sort(data) BinarySearch(data,33) function BinarySearch(arr, target) { let s = 0; let e = arr.length - 1; let m = Math.floor((s + e) / 2); let sortTag = arr[s] <= arr[e];//确定排序顺序 while (s < e && arr[m] !== target) { if (arr[m] > target) { sortTag && (e = m - 1); !sortTag && (s = m + 1); } else { !sortTag && (e = m - 1); sortTag && (s = m + 1); } m = Math.floor((s + e) / 2); } if (arr[m] == target) { console.log(‘找到了,位置%s‘, m); return m; } else { console.log(‘没找到‘); return -1; } }

使用冒泡法进行排序然后用二分查找法找出33的位置 JS

标签:for   tar   pre   顺序   二分   bin   tag   fun   search   

原文地址:https://blog.51cto.com/8818968/2441679

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!