package java_problem;
/**
*
* 反转链表
* @author yqt
*
*/
class ListNodeTwo{
private int value;
private ListNodeTwo next;
ListNodeTwo(int value){
this.value = value;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
public ListNodeTwo getNext() {
return next;
}
public void setNext(ListNodeTwo next) {
this.next = next;
}
}
public class InverseListNodeTwo {
public static void printListNodeTwo(ListNodeTwo head){
while(head!=null){
if(head.getNext()==null)
System.out.println(head.getValue());
else
System.out.print(head.getValue()+" ,");
head = head.getNext();
}
}
public static ListNodeTwo inverseListNodeTwo(ListNodeTwo head){
if(head==null)
return head;
ListNodeTwo pre = null;
ListNodeTwo next = null;
while(head!=null){
next = head.getNext();
head.setNext(pre);
pre = head;
head = next;
}
return pre;
}
public static void main(String[] args) {
ListNodeTwo node0 = new ListNodeTwo(0);
ListNodeTwo node1 = new ListNodeTwo(1);
ListNodeTwo node2 = new ListNodeTwo(2);
ListNodeTwo node3 = new ListNodeTwo(3);
node0.setNext(node1);
node1.setNext(node2);
node2.setNext(node3);
node3.setNext(null);
System.out.println("原链表为:");
printListNodeTwo(node0);
ListNodeTwo head = inverseListNodeTwo(node0);
System.out.println("反转后为:");
printListNodeTwo(head);
}
}
反转链表
最新推荐文章于 2024-07-12 21:20:02 发布