首页 > 其他分享 >206. Reverse Linked List[Easy]

206. Reverse Linked List[Easy]

时间:2023-01-30 13:58:07浏览次数:37  
标签:head null ListNode Reverse List Linked result next 节点

206. Reverse Linked List

Given the head of a singly linked list, reverse the list, and return the reversed list.

Constraints:

  • The number of nodes in the list is the range [0, 5000].
  • -5000 <= Node.val <= 5000

Example
image

Input: head = [1,2,3,4,5]
Output: [5,4,3,2,1]

思路

利用临时变量,依次逆转每个节点

题解

  • 简易
        ListNode result = null;
        // 存头节点
        ListNode temp = head;
        // 存临时节点
        ListNode cur;

        while (temp != null) {
            // 取出当前节点,赋给临时节点
            cur = new ListNode(temp.val);
            // 把上一个节点赋给当前节点的next,首次应该是null
            cur.next = result;
            // 用当前节点替换上一个节点
            result = cur;

            // 遍历下一个节点
            temp = temp.next;
        }
        return result;
    }
  • 精简
    public ListNode reverseList(ListNode head) {
        ListNode result = null;

        while (head != null) {
            // 暂存临时变量
            ListNode next = head.next;
            // 把上一次的结果赋给当前节点的下一位
            head.next = result;
            // 当前节点为结果
            result = head;
            // 遍历下一个节点
            head = next;
        }
        return result;
    }

标签:head,null,ListNode,Reverse,List,Linked,result,next,节点
From: https://www.cnblogs.com/tanhaoo/p/17073606.html

相关文章

  • Quartz.Net 官方教程(Listener 和 JobStore)
    Listener调度任务的监听,当前版本支持添加调度,触发器和任务的监听,其中触发器和任务的监听支持通过监听名称进行添加(Add*ListenerMatcher方法)监听不能对外抛出异常,需要内部......
  • ArrayList动态扩容
    一、ArrayList的动态扩容机制要了解其动态扩容机制就必须先看它的源码,源码是基于jdk1.8的1.ArrayList的主要属性//如果不指定容量(空构造器),则在添加数据时的空......
  • 春哥博客 - ArrayList集合对象
    1、ArrayList集合对象usingSystem;usingSystem.Collections;namespaceArrayList集合{classProgram{staticvoidMain(string[]args)......
  • 春哥博客 - List 泛型集合
    usingSystem;usingSystem.Collections.Generic;namespaceList_泛型集合{classProgram{staticvoidMain(string[]args){......
  • 枚举类list序列化与反序列化
    `packagecom.byd.plm.authority.auth.dto.jsonSerializer;importcom.byd.plm.authority.auth.dto.enums.AuthTypeEnum;importcom.fasterxml.jackson.core.JsonGenerat......
  • Mysql数据库插入数据时出现Unknown column ‘admin‘ in ‘field list‘错误
    报错内容  报错原因字段和插入的值所用的引号不对 解决方案 insertintot_user(`username`,`password`,`email`)VALUES(`admin`,`admin`,`[email protected]......
  • galgame list
    1.9-nine-系列目前最喜欢的作品,可能有一小部分原因是因为玩的比较久所以感情更深,但是不得不承认和泉老师的画和这个系列的剧本都是很顶尖的存在该作有点战斗题材的感觉......
  • flutter Listview physics常见子类
    ListView的physics是ScrollPhysics类:其常见子类有BouncingScrollPhysics :允许滚动超出边界,但之后内容会反弹回来。ClampingScrollPhysics :防止滚动超出边界,夹住 。......
  • List<Object>集合获取指定属性最大值的对象
    List<Vo>list=dao.selectList();if(CollectionUtils.isNotEmpty(list)){Optional<Vo>max=list.stream().filter(obj->ObjectUtils.isNotEmpty(obj)&&ObjectUt......
  • 线程安全集合CopyOnWriteArrayList
    解决多线程的集合有以下几种1、Vertor(所有方法上加synchronized锁)能保证多线程安全,数据一致,但性能低下一般不用2、Collections.synchronizedList方法返回的List 在方......