(1)本关任务:掌握创建数组的方法,获取数组的元素和长度。
已知两个数组array1和array2,参数a是一个整数,先判断a的值与数组array1的长度值相等,如果相等,返回数组array1的最后一个元素,反之,则返回数组array2的最后一个元素;
(2)本关任务:掌握数组元素增减的方法。
将数组testArray的最后a个元素移动到最前面,这a个元素之间的相对位置不变,其余元素之间的相对位置不变;
比如将数组[1,2,3,4,5]最后2个元素移动到最前面,数组变为[4,5,1,2,3];
返回移动结束后数组在索引b处的元素;
解析:
var testArray = [12,“java”,“js”,“c”,“c++”,24,36,“python”,“c#”,“css”];
function mainJs(a,b) {
a = parseInt(a);
b = parseInt(b);
//请在此处编写代码
/begin/
for(var i=0;i testArray.unshift(testArray.pop());
}
return testArray[b];
/end/
}
(3)将一个一维数组转换为二维数组,行优先。
将一维数组arr转为a行b列的二维数组,行优先;
返回该二维数组;
解析:
var arr = [1,2,3,4,5,6,7,8,9,0,10,11,12,13,14,15,16,17,18,19,20,21,23,22];
function mainJs(a,b) {
a = parseInt(a);
b = parseInt(b);
//请在此处编写代码
/begin/
var arr1=new Array(a);
for(var i=0;i arr1[i]=new Array(b);
}
var count=0;
for(var i=0;i for(var j=0;j arr1[i][j]=arr[count++];
}
}
return arr1;
/end/
}
(4**)本关任务:掌握数组的常用方法**
function mainJs(myArray) {
myArray = myArray.split(",");
//请在此处编写代码
/*********begin*********/
var a=new Array();
var i=0,j=0;
while(myArray.indexOf("a",i)!=-1)
{
a[j]=myArray.indexOf("a",i);
i=a[j]+1;
j++;
}
var b=new Array();
var i1=0,j1=0;
while(myArray.indexOf("b",i1)!=-1)
{
b[j1]=myArray.indexOf("b",i1);
i1=b[j1]+1;
j1++;
}
var d=a.concat(b);
return d;
/*********end*********/
}
(5)本关任务:掌握冒泡排序和选择排序。
function mainJs(a) {
var arr = a.split(",");
for(var i = 0;i < arr.length;i++) {
arr[i] = parseInt(arr[i]);
}
//请在此处编写代码
/*********begin*********/
var mi=new Array();
var aLength = arr.length;
var temp;
var max = arr[0];
var maxIndex = 0;
for(var i = 0;i < aLength-1;i++) {
//共进行n-1次选择
for(var j = 1;j < aLength-i;j++) {
//一次选择
if(arr[j] > max) {
max = arr[j];
maxIndex = j;
}
}
mi[i]=maxIndex;
//将本次选出的最大元素移动到最终的位置上
temp = arr[aLength-i-1];
arr[aLength-i-1] = arr[maxIndex];
arr[maxIndex] = temp;
var max = arr[0];
var maxIndex = 0;
}
return mi;
/*********end*********/
}