1. 程式人生 > >有一個從小到大排好序的數組。現輸入一個數,要求按原來的規律將它插入數組中。

有一個從小到大排好序的數組。現輸入一個數,要求按原來的規律將它插入數組中。

cti 分享 bre alt 技術 .cn splice 死循環 set

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
//有一個從小到大排好序的數組。現輸入一個數,要求按原來的規律將它插入數組中。
var arr = [1, 2, 3, 4, 5, 7, 9];

function insertScot (m)
{
if(m > arr[arr.length - 1])
//進行值m與最後一個數的對比。
{
arr.push(m);
//因為這是一個從小到大的數組,所以比最後一個大就可以在數組後加入數值
return arr;
//直接返回輸出結果
}else
{
for(var i = 0; i < arr.length; i++)
{
if(m <= arr[i])
//進行傳入的值m和arr數組裏的每個值進行比較
{
arr.splice(i, 0, m);
//在第i個地方插入個數m
break;
//打斷循環,不然會一直下去,造成死循環。
}

}
return arr;
}
}

console.log(insertScot(5));

</script>
</head>
<body>
</body>
</html>

效果圖 ↓

技術分享

有一個從小到大排好序的數組。現輸入一個數,要求按原來的規律將它插入數組中。