输入一个链表,按链表从尾到头的顺序返回一个ArrayList。
function printListFromTailToHead(head)
{
var arr=[];
while(head){
arr.push(head.val);
head=head.next;
}
return arr.reverse();
}
function printListFromTailToHead(head)
{
var res = [];
while(head){
res.unshift(head.val);
head = head.next;
}
return res;
}
一. 数组中push()和unshift()
1.1 unshift()
arrayObject.unshift(newelement1,newelement2,…,newelementX)
unshift() 方法:可向数组的开头添加一个或更多元素,并返回新的长度。
注释:unshift() 方法会改变数组的长度。
注释:unshift() 方法无法在 Internet Explorer 中正确地工作!
1.2 push()
arrayObject.push(newelement1,newelement2,…,newelementX)
push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
注释:该方法会改变数组的长度。
二. 数组排序reverse()和sort()
2.1 reverse()
arrayObject.reverse()
reverse() 方法用于颠倒数组中元素的顺序。
注释:该方法会改变原来的数组,而不会创建新的数组。
2.2 sort()
arrayObject.sort(sortby)
2.2.1 按字母顺序进行排序
arr.sort()
例一:
arr.sort()之前:George,John,Thomas,James,Adrew,Martin
arr.sort()之后:Adrew,George,James,John,Martin,Thomas
例二:
arr.sort()之前:10,5,40,25,1000,1
arr.sort()之后:1,10,1000,25,40,5
2.2.2 按数组大小进行排序
function sortNumber(a,b)
{
return a - b
}
document.write(arr.sort(sortNumber))
代码输出结果:1,5,10,25,40,1000