牛客网-剑指offer-15-反转链表

原创 2017年09月13日 21:21:46
时间限制:1秒 空间限制:32768K 热度指数:174815
本题知识点: 链表
 算法知识视频讲解

题目描述

输入一个链表,反转链表后,输出链表的所有元素。


/*
public class ListNode {
    int val;
    ListNode next = null;


    ListNode(int val) {
        this.val = val;
    }
}*/
public class Solution {
    public ListNode ReverseList(ListNode head) {
        if(head==null || head.next==null) {
            return head;
        }
        ListNode p1=head;
        ListNode p2=p1.next;
        ListNode p3=p2.next;
        p1.next=null;
        while(p3!=null) {
            p2.next=p1;
            p1=p2;
            p2=p3;
            p3=p3.next;
        }
        p2.next=p1;
        return p2;
    }
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【牛客网】反转链表

转载于剑指Offer - 题目: 输入一个链表,反转链表后,输出链表的所有元素。 代码: class Solution { public: ListNode* ReverseList(...

牛客网----反转链表

题目描述:输入一个链表,反转链表后,输出链表的所有元素。 示例:输入:1,2,3,4,5,6    输出:6,5,4,3,2,1 代码: ListNode* ReverseList(ListNod...

【剑指offer】递归循环两种方式反转链表

本文分别用非递归和递归两种方式实现了链表的反转,在九度OJ上测试了非递归版本,AC。 题目描述: 输入一个链表,反转链表后,输出链表的所有元素。 (hint : 请务必使用链表) 输入: 输入可能包含...

剑指Offer面试题16(Java版):反转链表

题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。 解决与链表相关的问题总是有大量的指针操作,而指针操作的代码总是容易出错的。很多的面试官喜欢出链表相关的问题,就是想通过指...

剑指Offer之反转链表

题目描述: 输入一个链表,反转链表后,输出链表的所有元素。 (hint : 请务必使用链表) 输入: 输入可能包含多个测试样例,输入以EOF结束。 对于每个测试案例,输入的第一行为一个整数...

剑指offer-3-面试16:反转链表

题目 分析 测试用例代码 本题考点 本题扩展 题目 定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。链表的定义如下:struct ListNode { in...

剑指Offer面试题16 反转链表

/* 反转链表: 定义一个函数,输入一个链表的头结点,反转该链表并输出翻转后链表的头结点。 分析: 假设h,i,j三个节点。h节点已经指向前面的节点,i节点要指向h节点,这时,i与j中间断开,因此...

【剑指Offer面试题】 九度OJ1518:反转链表

与其很快写出一段漏洞百出的代码,倒不如仔细分析再写出鲁棒的代码。 提前想好测试用例(输入非空等等)进行测试修改代码。 题目链接地址: http://ac.jobdu.com/problem.p...

剑指offer:(16)代码的鲁棒性:反转链表

输入一个链表,反转链表后,输出链表的所有元素。 思路:定义三个指针,分别指向当前遍历的节点、它的前一节点及后一节点,为了防止链表断开。 测试用例:    功能测试:           1、输...

《剑指Offer》面试题:反转链表

在这篇博文中:《剑指Offer》面试题:从尾到头打印链表,就应用过反转链表,这里重新又写里一篇。/* 反转链表 */#include #include #include typedef int El...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:牛客网-剑指offer-15-反转链表
举报原因:
原因补充:

(最多只允许输入30个字)