牛客-剑指offer-单链表的反转
来源:互联网 发布:阿里云测试招聘 编辑:程序博客网 时间:2024/06/04 19:33
题目:
将一个链表进行反转.
ListNode.java
public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; this.next=null; } }
Solution.java
/** * Created by xizwu on 2017/2/16. */public class Solution { public ListNode ReverseList(ListNode head) { if(head==null) return null; ListNode pre=null; ListNode next=null; while(head !=null){ next=head.next; head.next=pre; pre=head; head=next; } return pre; } public ListNode insert(ListNode head,int val){ //1. 指向 链表的末尾 ListNode before=head; if(head==null){ before=new ListNode(val); return before; } while(head.next !=null){ head=head.next; } ListNode myNode=new ListNode(val); head.next=myNode; //2. 添加一个node return before; } public void myprint(ListNode head){ if(head==null){ System.out.println(" The list is empty"); return; } while(head!=null){ System.out.print(head.val+" "); head=head.next; } }}
maintest.java
/** * Created by xizwu on 2017/2/16. */public class maintest { public static void main(String[] args) { Solution myso = new Solution(); ListNode myhead = null; ListNode afterResverHead=null; myhead=myso.insert(myhead, 1); myhead=myso.insert(myhead, 2); myhead=myso.insert(myhead, 3); myso.myprint(myhead); afterResverHead=myso.ReverseList(myhead); System.out.println("#################"); myso.myprint(afterResverHead); }}
最后的结果:
1 2 3 #################
3 2 1
0 0
- 牛客-剑指offer-单链表的反转
- 剑指offer算法题之单链表的反转--面试题16:反转链表
- 16链表的反转|剑指offer
- 牛客《剑指Offer》 反转链表
- 剑指offer 面试题16 反转单链表
- 《剑指offer》:[1]反转一个单链表
- 剑指offer demo之单链表反转
- 剑指offer:反转链表
- 剑指offer--反转链表
- 剑指offer--反转链表
- 剑指Offer-反转链表
- 《剑指offer》反转链表
- 剑指 offer:反转链表
- 剑指offer-反转链表
- 剑指offer 反转链表
- 剑指offer-反转链表
- 剑指offer:反转链表
- [剑指offer]反转链表
- POJ2389 Bull Math【大数】
- ajax提交form序列化
- 一些oracle-ora等错误记录
- UVa 514 Rails(经典栈)
- 互联网公司为啥不使用mysql分区表?
- 牛客-剑指offer-单链表的反转
- npm难以安装包的解决方法
- 数组值传递和引用传递
- DataGuard之DG Broker配置详解
- iOS开发------iOS 10 由于权限问题导致崩溃的那些坑
- JAVA 反射
- STM32之的GPIO推挽输出与开漏输出的区别
- iOS发送短信后验证码倒计时
- sss