JS实现冒泡-二分查找-反转算法

版权声明:草原上的雄鹰 https://blog.csdn.net/sinat_36729274/article/details/80819621
< script >
// var arr=[1,5,7,8,4,5,7,5]
//二分查找:效率高 :限制:必须有序数组
var arr=[ 1, 2, 15, 16, 18]
function find( low, high, n){
var mid= Math. floor(( low+ high)/ 2)
//拿到中间下标取值
if( arr[ mid]== n){
return mid
}
//确定下一次查找方向
if( n> arr[ mid]){
return find( mid+ 1, high, n)
}
if( n< arr[ mid]){
return find( 0, mid- 1, n)
}
}
var i= find( 0, arr. length, 16)
//反转
var str= 'saaddfrv'
var brr= str. split( '') /*将字符串转换为数组*/
var i= 0, j= brr. lebgth- 1
while( i< j){
var temp= brr[ i]
brr[ i]= brr[ j]
brr[ j]= temp
i++
j--
}
//冒泡排序
var crr=[ 4, 5, 7, 8, 9, 6, 2, 14, 5]
for( var i= 0; i< crr. length; i++){
for( var j= 0; j< crr. length; j++){
if( crr[ i]> crr[ j]){
var temp= crr[ i]
crr[ i]= crr[ j]
crr[ j]= temp
}
}
}
alert( crr)

< / script >

猜你喜欢

转载自blog.csdn.net/sinat_36729274/article/details/80819621
今日推荐