function Node(data){
this.data = data;
this.next = null;
}
var node1 = new Node(1);
var node2 = new Node(2);
node1.next = node2;
var node3 = new Node(3);
node2.next = node3;
var node4 = new Node(4);
node3.next = node4;
var showList = function(headNode){
var nodeTemp = headNode;
while(nodeTemp != null){
console.log("------------------------")
console.log("node data:" + nodeTemp.data);
nodeTemp = nodeTemp.next;
}
};
var reverseList = function(headNode){
var headTag = headNode;
var pCur = headTag;
var pNext = null;
var pPre = null;
while(pCur != null){
pNext = pCur.next;
pCur.next = pPre;
pPre = pCur;
pCur = pNext;
}
return pPre;
};
console.log("---------单链表所有元素(未反转)---------");
showList(node1);
console.log("---------反转单链表所有元素--------------");
showList(reverseList(node1));
运行结果如图: