62,621
社区成员
发帖
与我相关
我的任务
分享
public LinkedList reverse(LinkedList ll){
LinkedList llResault = new LinkedList();
int len = ll.size();
while (len > 0) {
llResault.add(ll.pollLast());
--len;
}
return llResault;
}
Node previous = null;
Node current = first;
Node next = current.nextNode;
current.nextNode = null;
while (next != null) {
previous = current;
current = next;
next = next.nextNode;
current.nextNode = previous;
}
Node tep = first;
first = last;
last = tep;
public class MyLinkedList {
Node first, last = null;
class Node {
public int data;
public Node next;
}
void addNode(int data) {
Node myNode = new Node();
myNode.data = data;
myNode.next =null;
if (first == null)
first = myNode;
if (last != null)
last.next = myNode;
last = myNode;
}
public void reverse() {
if (null == first)
return;
Node p = null;
Node c = first;
Node n = c.next;
c.next = p;
while (n != null) {
p = c; c = n; n = n.next; c.next = p;
}
Node t = first;
first = last;
last = t;
}
void print() {
for (Node myNode = first; myNode != null ; myNode = myNode.next )
System.out.print(myNode.data +",");
}
//---------------------main()--------------------------
public static void main(String[] args) {
MyLinkedList myLinkedList = new MyLinkedList();
myLinkedList.addNode(1);
myLinkedList.addNode(2);
myLinkedList.addNode(3);
myLinkedList.addNode(4);
myLinkedList.addNode(5);
myLinkedList.print();
myLinkedList.reverse();
System.out.println();
myLinkedList.print();
}
}