Js有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

<!DOCTYPE html>
<title>Title</title>
<script>
var arr = [1,2,3,4,11];
var s = prompt("请输入一个数字");
var middle_index = 0;
var result =[];
if (i%2 == 0)
{
middle_index = arr.length/2-1;
}
else
{
middle_index = (arr.length+1)/2-1;
}
var middle_value = arr[middle_index];

if (s>middle_value)
{
for (var i=middle_index+1;i<arr.length;i++)
{
if (s>arr[i] && i<arr.length-1)
{
result.push(arr[i]);
}
else if (s>arr[i] && i == arr.length-1)
{
result.push(arr[i]);
result.push(s);
}
else
{
result.push(s);
result.push(arr[i]);
}
}
arr = arr.slice(0,middle_index+1);
arr = arr.concat(result);
}
else if (s == middle_value)
{
var arr1 = arr.slice(0,middle_index+1);
arr1.push(s);
arr = arr1.concat(arr.slice(middle_index+1));
}
else
{
for (var i=0;i<middle_index+1;i++)
{
if (s<arr[i] && i ==0)
{
result.push(s);
result.push(arr[i]);
}
else if (s<arr[i] && i >0)
{
result.push(s);
result.push(arr[i]);
}
else
{
result.push(arr[i]);
}
}
arr = arr.slice(middle_index+1);
arr = result.concat(arr);
}
document.write(arr);
</script>
</head>
<body>

</body>
</html>

猜你喜欢

转载自www.cnblogs.com/maimaiti/p/10553808.html