冲击大厂算法面试=>链表专题【链表反转】

news2024/11/14 9:21:41

目录标题

  • 最基础的反转链表
    • 上代码
    • 题解呀
    • 实在不会的时候记住

最基础的反转链表

在这里插入图片描述

上代码

class Solution {
    public ListNode reverseList(ListNode head) {
        ListNode pre = null;
        ListNode cur = head;
        while(cur != null){
            ListNode nextNode = cur.next;
            cur.next = pre;
            
            pre = cur;
            cur = nextNode;
        }

        return pre;
    }
}

题解呀

时隔一年再次写个最基础的链表算法,居然卡了一会儿,所以为了加深印象,再次学习一下,如何快速理解上面写法?

  • 定义两个指针: pre 和 cur ;pre 在前 cur 在后。
    • 最开始的时候pre=null (相当于没有),cur=head
  • 每次让 cur 的 next 指向 pre ,实现一次局部反转
  • 局部反转完成之后,pre 和 cur 同时往前移动一个位置,如何移动呢
    • prev = curr; //前面pre节点向右移动一下
    • curr = next; //当前cur向右移动一下
  • 循环上述过程,直至 pre 到达链表尾部,所以最后返回pre就行

举例子:1->2->3 变成 1<-2<-3

实在不会的时候记住

层层递进,最终回归
在这里插入图片描述

好用的话就点个赞吧!!!
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2083887.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[HZNUCTF 2023 preliminary]flask

[HZNUCTF 2023 preliminary]flask 点开之后页面如图所示&#xff1a; 猜测是SSTI模板注入&#xff0c;先输入{7*7},发现模板是倒序输入的&#xff1a; 然后我们输入}}‘7’*7{{返回777777&#xff0c;这是jinja2模板&#xff1a; 我们需要让用户输入一个字符串&#xff0c;对其…

计算机视觉基础. 1 学习导论

1 .引言 学习的目的是从过去的经验中吸取教训&#xff0c;以解决未来的问题。通常&#xff0c;这涉及搜索解决问题过去实例的算法。然后&#xff0c;该算法可以应用于该问题的未来实例。 过去和未来不一定指日历日期&#xff1b;相反&#xff0c;它们指的是学习者之前看到的内…

Windows下devecostudio-windows-3.1.0.501的下载与安装教程

Windows下devecostudio-windows-3.1.0.501的下载与安装教程 1.华为开发者联盟 2.Deveco Studio下载 一、注册华为账号 进入华为开发者联盟&#xff0c;注册华为账号&#xff08;如果有手机华为账号&#xff0c;这里通用&#xff09; 二、下载Deveco Studio3.1.0.501 链接&am…

C++入门基础知识39——【关于C++ 运算符——位运算符】

成长路上不孤单&#x1f60a;【14后&#xff0c;C爱好者&#xff0c;持续分享所学&#xff0c;如有需要欢迎收藏转发&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#x1f60a;&#xff01;&#xff01;&#xff01;&#xff01;&#xff…

GitHub的AI未来:CEO Thomas Dohmke深入解析

在近期的一次深入访谈中,GitHub的首席执行官Thomas Dohmke分享了他对AI在编程领域未来的看法,GitHub Copilot的成就,以及在微软生态下保持独立性的重要性。以下是对这次讨论的精华总结。 GitHub在AI领域的定位 Thomas Dohmke认为,AI技术需要竞争来推动发展。他指出,GitH…

类与ES6类之间的继承

前言 ● 下面是之前学习ES6 classes的代码 class PersonCl {constructor(fullName, birthYear) {this.fullName fullName;this.birthYear birthYear;}calcAge() {console.log(2037 - this.birthYear);}greet() {console.log(你好${this.fullName});}get age() {return 2037…

JVM 锁的种类

优质博文&#xff1a;IT-BLOG-CN 一、JVM 锁【偏向锁|轻量级锁|重量级锁】 对象头[每个对象都具有对象头] Mark&#xff1a;对象头的标记&#xff08;32位&#xff09;&#xff0c;描述对象的hash、锁信息、垃圾回收标记、年龄&#xff1b;内容包括&#xff1a;①、指向锁记录…

OpenShift 与 Rancher

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

Nacos2.4.1安装

Nacos官网| Nacos 配置中心 | Nacos 下载| Nacos 官方社区 | Nacos 官网 下载后解压 进入解压目录/bin window启动命令 startup.cmd -m standalone 用的JDK环境17 遇到报错 第一个办法 退回2.4.0哈哈哈 nacos配置为JDK1.8&#xff0c;而JDK17开始使用按模块引入包语法…

阀控多功能智能水表是什么?

阀控多功能智能水表是一种集成了多种先进技术和功能的新型水表&#xff0c;主要用于精确计量和控制水流量。这类水表不仅能够提供准确的数据记录&#xff0c;还具备远程控制、故障报警、数据分析等多种智能功能&#xff0c;适用于住宅、商业和工业等多种应用场景。本文将深入探…

泽众P-One性能测试平台中的环境管理与施压集群分配

P-One是泽众软件自主研发的一站式性能测试平台&#xff0c;在软件性能测试中发挥着重要作用。其中&#xff0c;环境管理和施压集群分配是P-One的关键功能&#xff0c;对于确保测试的准确性和有效性至关重要。 一、环境部署 P-One可以对已安装的压力机进行集中管理&#xff0c;…

240828-Gradio结合Html+Css+Javascript制作年历

A. 最终效果 需求描述 html javascript css 按年生成2016年至2116年的日历&#xff0c;要求如下&#xff1a; 二行六例&#xff0c;每个单元是一个月&#xff0c;且每个单元包含周次信息通过背景为红色的圆圈高亮显示当前的日期第一页显示今年&#xff0c;鼠标左边或键盘左键…

电梯按钮检测检测系统源码分享 # [一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]

电梯按钮检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vis…

RKNPU入门与实践 ---- 混合量化

目录 前言 一、混合量化 1.1 概念介绍 1.1.1 hybrid_quantization_step1 1.1.2 hybrid_quantization_step2 二、实际编写程序 2.1混合量化第一阶段 2.2 混合量化第二阶段 三、混合量化第一步接口参数proposal 前言 为什么要进行混合量化&#xff1f; 答案&#x…

Zookeeper未授权访问的漏洞处理

echo envi |nc 192.168.0.1 2181 这个命令可以用于获取Zookeepr&#xff08;下面有zk代替&#xff09;目标服务器的环境信息、部署路径、版本等敏感信息。如果这些信息被恶意利用&#xff0c;确实可能导致安全漏洞&#xff0c;进而对网络和服务器安全构成威胁。 1.执行zkCli.…

XSS LABS - Level 17 过关思路

关注这个靶场的其他相关笔记&#xff1a;XSS - LABS —— 靶场笔记合集-CSDN博客 0x01&#xff1a;过关流程 进入靶场&#xff0c;空空如也&#xff0c;右击页面&#xff0c;查看网页源码&#xff0c;找找可疑点&#xff1a; 可以看到&#xff0c;靶场默认传参&#xff0c;都传…

初赛试题-2022年CSP-J2

目录 先言 二、阅读程序&#xff08;判断题1.5分&#xff0c;选择题3分&#xff0c;共40分&#xff09; &#xff08;1&#xff09; 16. 17. 18. 19. 20. 21. &#xff08;2&#xff09; 22. 23. 24. 25. 26. 27. &#xff08;3&#xff09; 28. 29. 30. 3…

18.神经网络 - 非线性激活

神经网络 - 非线性激活 使用到的pytorch网站: Padding Layers&#xff08;对输入图像进行填充的各种方式&#xff09; 几乎用不到&#xff0c;nn.ZeroPad2d&#xff08;在输入tensor数据类型周围用0填充&#xff09; nn.ConstantPad2d&#xff08;用常数填充&#xff09; 在 …

【图像】灰度图与RGB图像的窗宽、窗位的值范围二三问

1. 16位灰度图的窗宽、窗位的值范围&#xff1f; 对于16位的灰度图像&#xff0c;每个像素点可以表示从0到2^16-1&#xff08;即0至65535&#xff09;之间的强度值。在医学影像领域&#xff0c;如CT扫描图像中&#xff0c;窗宽和窗位是用来调整图像对比度和亮度的参数&#xf…

【Spring Boot 3】【Web】自定义过滤器

【Spring Boot 3】【Web】自定义过滤器 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技术总是要花费…