【力扣hot100】刷题笔记Day8

news2025/2/26 7:59:25

前言

  • 到了大章节【链表】了,争取两三天给它搞定!!

160. 相交链表 - 力扣(LeetCode)】

  • 双指针

    • 参考题解,相比于求长度+右对齐再一起出发的方法简洁多了
    • class Solution:
          def getIntersectionNode(self, headA: ListNode, headB: ListNode) -> Optional[ListNode]:
              A, B = headA, headB
              while A != B:
                  A = A.next if A else headB  # A跑完就跳到B开始
                  B = B.next if B else headA  # B跑完就跳到A开始
              return A  # 返回重合的节点或者返回空值

 206. 反转链表 - 力扣(LeetCode)

  • 双指针

    • class Solution:
          def reverseList(self, head: Optional[ListNode]) -> Optional[ListNode]:
              pre, cur = None, head
              while cur:
                  temp = cur.next  # 暂存下一个节点
                  cur.next = pre   # 反转指针
                  pre = cur        # pre后移
                  cur = temp       # cur后移
              return pre  # 最后cur是None,pre是最后的结点

234. 回文链表 - 力扣(LeetCode)

  • 快慢指针 + 翻转

    • 参考题解,复用上一题的翻转,注意一下奇偶以及最后要恢复链表
    • class Solution:
          def isPalindrome(self, head: Optional[ListNode]) -> bool:
              # 翻转链表
              def reverse(head):
                  pre, cur = None, head
                  while cur:
                      temp = cur.next
                      cur.next = pre
                      pre = cur
                      cur = temp
                  return pre
              # 快慢指针
              fast = slow = head
              while fast.next and fast.next.next:
                  fast = fast.next.next
                  slow = slow.next
              pre = slow # 存个pre断点方便恢复
              slow = slow.next  # 后半截从中点的下一个节点开始
              left = head
              right = last = reverse(slow)  # 存个last最后节点方便恢复
              while right:  # 奇数right短一截,偶数right和left一样长
                  if left.val != right.val:
                      return False
                  left = left.next
                  right = right.next
              # 恢复链表
              pre.next = reverse(last)
              return True

后言

  • 在工位刷题效率杠杠的!有双屏无论是编辑博文还是看题解都很舒服~ 链表真好玩呀(

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

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

相关文章

zabbix5.0利用percona监控MySQL

具体来说包括: Percona Monitoring Plugins 这是一组用于收集MySQL实例各种性能指标和状态的插件脚本,包括: mysqld_stats.pl - 收集服务器状态计数器mysqld_statement_replay.pl - 进行负载模拟测试pt-status - 收集InnoDB资源使用情况等 Percona Templates 基于这些插件收集…

gitlab 项目上线,项目上线后回滚

gitlab 项目上线,项目上线后回滚 1.需要自己有个gitlab项目环境,没有找我,docker-compose 一键环境启动 2.发起合并请求3.选择合并的分支4.点击创建合并,然后确认合并合并完成,进行回滚操作,在合并详情页…

wo-gradient-card是一款采用uniapp实现的透明辉光动画卡片

采用uniapp-vue3实现,透明辉光动画卡片,卡片内容包含标签、标题、副标题、图片 支持H5、微信小程序(其他小程序未测试过,可自行尝试) 可用于参考学习 可到插件市场下载尝试: https://ext.dcloud.net.cn/plu…

仿12306校招项目-前后端运行

目录 1.git 克隆 2.设置JDK版本 3.sql脚本导入数据 4.启动中间件 5.运行后端 6.运行前端 1.git 克隆 打开 IntelliJ IDEA,菜单栏顶部找到 Git -> Clone 选项。找到 Clone 这个按钮输入 gitgitee.com:nageoffer/12306.git或者https://gitee.com/nageoffer/…

什么是企业数字化转型的关键要素?

企业数字化转型的关键要素通常包括以下几个方面: 战略规划:企业需要制定清晰的数字化转型战略,明确转型的目标、路径和时间表,确保数字化转型与企业整体战略相一致,为企业提供明确的指导。 数据驱动:数据是…

Android 7.0以上charles无法抓取部分https包问题

首先保证配置一切正确 手机通过访问chls.pro/ssl下载.pem证书,如无法安装,在文件管理器中将后缀名改为.crt 在设置中安装该证书 Charles-Proxy - SSL Proxying Setting - Include 添加需要抓包的URL:443即可 以上基本配置结束后,看下代码 代…

极狐GitLab 如何重置管理员密码

在之前安装极狐GitLab 的文章中提到,极狐GitLab 安装成功后,初始登录密码会放在 /etc/gitlab/initial_root_password 文件下,用户可以使用初始用户名 root 及文件内的初始密码即可登录极狐GitLab 实例。 但是有些情况下,可能会发…

第39期 | GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大型语言模型(LLM)等安全领域应用的知识。在这里,您可以…

[office] EXCEL表格不能使用键盘箭头切换单元格该怎么解决- #媒体#经验分享#知识分享

EXCEL表格不能使用键盘箭头切换单元格该怎么解决? EXCEL表格不能使用键盘箭头切换单元格该怎么解决? 1、入下图所示的键盘。 图中红色标记“1”的地方是Scroll Lock指示灯。Scroll Lock就是“滚动锁定”的意思。当该指示灯亮起来的时候,在excel表格中操…

Java的Stream流【详解】

目录 一.概念 二.Stream流处理数据的步骤 1.得到集合或者数组的Stream流。 2.调用Stream流的中间方法对数据进行处理 3.调用Stream流的终结方法获取处理的结果 一.概念 是Jdk8开始新增的一套API (java.util.stream.*),可以用于操作集合或者数组的数据。 好处: S…

【卷积神经网络中用1*1 卷积有什么作用或者好处呢?】

🚀 作者 :“码上有前” 🚀 文章简介 :深度学习 🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬 1*1 卷积有什么作用或者好处呢 作用降维和增加非线性特征组合和交互网络的宽度和深度调整全连接替代增强…

vue2的ElementUI的form表单报错“Error: [ElementForm]unpected width”修复

1. 问题 ElementUI的form表单,当动态切换显示表单时报错 Error: [ElementForm]unpected width。 翻译过来就是form表单的label宽度width出了问题。 2. 分析 参数说明类型可选值默认值label-width表单域标签的宽度,例如 ‘50px’。作为 Form 直接子元…

2024-02-20(DataX,Spark)

1.Oracle利用DataX工具导出数据到Mysql。Oracle利用DataX工具导出数据到HDFS。 只是根据导入导出的目的地不同,DataX的Json文件书写内容有所不同。万变不离其宗。 书写的Json格式的导入导出规则文件存放再Job目录下的。 2.Spark概念 Apache Spark是用于大规模数…

将yolov8权重文件转为onnx格式并在c#中使用

yolo模型转ONNX 在yolov8中,我们将训练结果的.pt权重文件转换为onnx格式只需要使用ultralytics库中的YOLO类,使用pip安装ultralytics库,然后执行下面python代码 from ultralytics import YOLO# 加载YOLOv8模型 model YOLO("best.pt&q…

智能家居界面:移动、pad端、电脑端、HMI端都有,比较多。

Hi,大家好,我是大千UI工场,本篇纯分享智能家居的各类终端界面,关注本头条号,每天带你看一样的UI作品。 智能家居界面可以通过手机应用程序、智能音箱的语音助手、智能电视等设备上的应用程序来实现。通过智能家居界面…

Java - @JSONField和@JsonProperty注解

JSONField注解是阿里巴巴的fastjson框架中的注解,用于指定JSON字符串中的属性名和Java对象中的属性名之间的映射关系 JsonProperty注解是Jackson框架中的注解,用法类似于JSONField,也是指定JSON字符串中的属性名和Java对象中的属性名之间的映…

爬虫知识--02

免费代理池搭建 # 代理有免费和收费代理 # 代理有http代理和https代理 # 匿名度: 高匿:隐藏访问者ip 透明:服务端能拿到访问者ip 作为后端,如何拿到使用代理人的ip 请求头中:x-forwor…

【Python爬虫】requests库get和post方法使用

requests库是一个常用于http请求的模块,性质是和urllib,urllib2是一样的,作用就是向指定目标网站的后台服务器发起请求,并接收服务器返回的响应内容。 1. 安装requests库 使用pip install requests安装 如果再使用pip安装python…

Fiddler工具 — 18.Fiddler抓包HTTPS请求(一)

1、Fiddler抓取HTTPS过程 第一步:Fiddler截获客户端发送给服务器的HTTPS请求,Fiddler伪装成客户端向服务器发送请求进行握手 。 第二步:服务器发回相应,Fiddler获取到服务器的CA证书, 用根证书(这里的根证…

Android 浅色皮肤阴影开发

前言:项目中要进行浅色皮肤开发,然后要求要有阴影效果,下面是UI觉得可行的中立方案效果 尝试一、使用elevation添加阴影发现效果一般 尝试二、使用带阴影的UI切图后续发现成本太大,对后续多个皮肤适配要求太大 尝试三、使用elevat…