用java实现反转链表
2015-11-04 10:41
381 查看
用java实现反转链表:
对节点类的定义:
测试类:
0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0
对节点类的定义:
static class Node{ int value; Node next; public Node(int value) { this.value = value; next=null; } public int getValue() { return value; } public void setValue(int value) { this.value = value; } public Node getNext() { return next; } public void setNext(Node next) { this.next = next; } }
测试类:
public class Test { public static void main(String[] args) { Node head=new Node(0); Node cur=null; Node t=null; for(int i=1;i<10;i++){ t=new Node(i); if(i==1) head.setNext(t); else cur.setNext(t); cur=t; } show(head); Node h=fanzhuan(head); show(h); } private static Node fanzhuan(Node head) { if(head==null) return head; Node pre=head; Node p=head.getNext(); Node pNext=null; while(p!=null){ pNext=p.getNext(); p.setNext(pre); pre=p; p=pNext; } head.setNext(null); head=pre; return head; } private static void show(Node head) { if(head==null) return; else { while (head!=null){ System.out.print(head.getValue()+" "); head=head.getNext(); } } System.out.println(); }运行结果:
0 1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1 0
相关文章推荐
- 菜鸟学习Spring——SpringMVC注解版将URL中的参数转成实体
- Java语言基础之集合乱舞step1
- Spring缓存注解@Cache使用
- Java POI Excel导出文件名中文乱码
- Java 定时器的使用:每天定时执行任务
- Spring 让 LOB 数据操作变得简单易行
- springmvc注解
- 【Java】【Flume】Flume-NG启动过程源码分析(一)
- SpringMVC第一个例子
- rxJava的使用
- eclipse如何关联javadoc和源码
- Spring的IoC(控制反转) 、DI(依赖注入)
- 运用Eclipse 的Jetty插件直接部署
- 为什么选择 Java 8 ?
- 说说Java中的实例初始化器
- Java 根据年号和第几周得到开始时间和结束时间
- 【Java】【Fulme】Flume-NG源码阅读之SpoolDirectorySource
- SolrDispatchFilter.java
- java的十个简单的性能优化
- Java 大数A+B