zoukankan      html  css  js  c++  java
  • 算法:反转链表。

    题目描述

    输入一个链表,反转链表后,输出新链表的表头。

    思路

    定义当前head,前序节点pre,后续节点next;
    依次遍历所有节点,将所有节点的next指向前一个节点。
    package LG.nowcoder;
    
    /**
     * @Author liguo
     * @Description 输入一个链表,反转链表后,输出新链表的表头。
     * 思路:定义当前head,前序节点pre,后续节点next;
     * 依次遍历所有节点,将所有节点的next指向前一个节点
     * @Data 2018-08-13 23:24
     */
    public class Solution4 {
        public ListNode ReverseList(ListNode head) {
                ListNode pre = null;
                ListNode next = null;
                while (head != null) {
                    next = head.next;//持有下一个节点的引用
                    head.next = pre;//将当前节点对下一个节点的引用指向前一个节点
                    pre = head;//将前一个节点指向当前节点
                    head = next;//将当前节点指向下一个节点
                }
                return pre;
        }
    }

  • 相关阅读:
    数组操作
    HTML CSS 笔记
    jacascript 滚动scroll
    SEO优化技巧
    STP选举规则和例题
    3.1GSM-R的网络组成
    光缆的型号
    光缆的种类
    fdisk命令分区过程
    文件系统管理--挂载光盘与U盘
  • 原文地址:https://www.cnblogs.com/liguo-wang/p/9471841.html
Copyright © 2011-2022 走看看