【算法】链表-20231124

news2024/7/30 10:46:34

这里写目录标题

  • 一、83. 删除排序链表中的重复元素
  • 二、206. 反转链表
  • 三、234. 回文链表

一、83. 删除排序链表中的重复元素

在这里插入图片描述

简单
1.1K
相关企业
给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。

示例 1:
输入:head = [1,1,2]
输出:[1,2]

示例 2:
输入:head = [1,1,2,3,3]
输出:[1,2,3]

提示:
链表中节点数目在范围 [0, 300] 内
-100 <= Node.val <= 100
题目数据保证链表已经按升序 排列

def deleteDuplicates(head:ListNode):
    if head is None:
        return None
    cur=head
    while cur.next:
        if cur.next.val==cur.val:
            cur.next=cur.next.next
        else:
            cur=cur.next
    return head

二、206. 反转链表

简单
3.4K
相关企业
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

示例 1:

输入:head = [1,2,3,4,5]
输出:[5,4,3,2,1]
示例 2:

输入:head = [1,2]
输出:[2,1]
示例 3:

输入:head = []
输出:[]

在这里插入图片描述

class Solution:
    def reverseList(self,head:ListNode):
        cur=head    #指向头节点
        pre=None    #
        while cur:
            temp=cur.next
            cur.next=pre
            pre=cur
            cur=temp
        return pre

三、234. 回文链表

简单
1.8K
相关企业
给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。

示例 1:
输入:head = [1,2,2,1]
输出:true

示例 2:
输入:head = [1,2]
输出:false

思路:推倒算法:当需要比较正向和反向的值的时候,栈可以轻松的做到,因为其先进后出的特性。我们先将原链表的值入栈,结束后依次出栈,和原序列的每个值相比较

class Solution:
    def func(self,head:ListNode):
        tmp=head
        helper=[]
        while tmp:
            helper.append(tmp.val)
            tmp=tmp.next
        while head:
            if head.val!=helper.pop():
                return False
            head=head.next
        return True

在这里插入图片描述

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

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

相关文章

Android相机性能提高50%

文章目录 应用举例&#xff08;可以不看这一part&#xff0c;直接跳过看具体怎么做&#xff09;&#xff1a;Snapchat 通过 Camera2 Extensions API 将新相机功能的集成速度提高了 50%**Camera2 扩展 API 可以访问高级功能更多设备上的更多机会 正文&#xff1a;开始使用扩展架…

甄知燕千云ITAM,您的IT资产管理专家

IT 资产是实现企业持续发展的重要资源之一&#xff0c;也是反观企业数字化转型发展的缩影。通常情况下&#xff0c;IT 资产指组织拥有、租赁或使用的任何信息技术设备和资源&#xff0c;这些设备和资源对组织的业务运行起到支持作用。包括硬件设备&#xff08;如服务器、计算机…

Rust语言入门教程(一) - 简介及Cargo使用

Rust编程入门 为什么学习Rust 我本人是一个DevOps工程师&#xff0c;并不是专职的开发人员&#xff0c;但需要了解各种各样的语言的基本知识和特性&#xff0c;以便在不同的项目中帮助开发人员设计软件架构&#xff0c;部署流程以及进行错误排查和调试。但是对任何新生的优秀…

大语言模型概述(三):基于亚马逊云科技的研究分析与实践

上期介绍了基于亚马逊云科技的大语言模型相关研究方向&#xff0c;以及大语言模型的训练和构建优化。本期将介绍大语言模型训练在亚马逊云科技上的最佳实践。 大语言模型训练在亚马逊云科技上的最佳实践 本章节内容&#xff0c;将重点关注大语言模型在亚马逊云科技上的最佳训…

数据结构算法-贪心算法

引言 贪心&#xff1a;人只要有 “需求“ &#xff0c;都会有有点“贪“&#xff0c; 这种“贪“是一种选择&#xff0c;或者“”取舍“ RTS&#xff08;即时战略&#xff09;游戏&#xff1a; 帝国时代里 首先确保拥有足够的人口 足够的粮食&#xff0c;足够的战略资源 足够的…

VMware vShere download

VMware 前言 VMware vSphere 是 VMware 的虚拟化平台,可将数据中心转换为包括 CPU、存储和网络资源的聚合计算基础架构。vSphere 将这些基础架构作为一个统一的运行环境进行管理,并为您提供工具来管理加入该环境的数据中心。 vSphere 的两个核心组件是 ESXi 和 vCenter Ser…

前端必学——实现电商图片放大镜效果(附代码)

放大镜可以说是前端人必须学会的程序之一,今天的案例为大家展示一下怎么实现放大镜的效果&#xff01; 效果图展示 整个效果就是当鼠标放到展示图上的时候&#xff0c;会出现一个遮罩层以及弹出来一个框展示一个详情图&#xff0c;并且鼠标移动的时候详情图跟着移动&#xff0c…

老外对开发信的评价是什么?如何写开发信?

老外对开发信的评价和态度怎么样&#xff1f;国外客户喜欢的开发信类型有哪些&#xff1f; 许多中国公司和个人都在与老外打交道时&#xff0c;不可避免地需要发送开发信。但是&#xff0c;老外对开发信的评价究竟如何呢&#xff1f;在这篇文章中&#xff0c;蜂邮将深入探讨老…

【代码可视化实践】代码变更影响分析 | 京东云技术团队

1.前言 笔者前文“浅析代码可视化”中讲述了代码可视化的基本实现原理&#xff0c;并给出了一些业界的应用场景。由于涉及原理和技术范围较广&#xff0c;以笔者能力难以做到面面俱到&#xff0c;为了减少信息传递偏差&#xff0c;便给出了一些信息来源供读者深入阅读。不过针…

css图片缩放属性object-fit说明

object-fit 属性可以设置以下值&#xff1a; 属性值说明例子fill填充容器&#xff0c;可能会改变图片的比例。object-fit: fill;contain保持图片的原始比例&#xff0c;确保图片完全包含在容器内。object-fit: contain;cover保持图片的原始比例&#xff0c;确保图片覆盖整个容…

微信小程序开发资源汇总

本文收集了微信小程序开发过程中会使用到的资料、问题以及第三方组件库。本文不是一篇关于如何学习微信小程序的入门指南&#xff0c;也非参考手册&#xff0c;只是一些资料的整理。 本仓库中的资料整理自网络&#xff0c;也有一些来自网友的推荐。 官方文档 小程序设计指南…

【超详细】手搓一个微信日记本

&#x1f380; 文章作者&#xff1a;二土电子 &#x1f338; 关注公众号获取更多资料&#xff01; &#x1f438; 期待大家一起学习交流&#xff01; 这里对之前的微信记事本小程序进行了重新编写&#xff0c;增加了更加详细的步骤描述&#xff0c;将全部图片都改成了本地图…

文心一言 VS 讯飞星火 VS chatgpt (142)-- 算法导论12.1 2题

二、用go语言&#xff0c;二叉搜索树性质与最小堆性质(见 6.1 节)之间有什么不同?能使用最小堆性质在 O(n)时间内按序输出一棵有 n 个结点树的关键字吗?可以的话&#xff0c;请说明如何做&#xff0c;否则解释理由。 文心一言&#xff1a; 在二叉搜索树&#xff08;Binary …

openEuler 22.03 LTS x86_64 cephadm 部署ceph18.2.0 未完成 笔记

环境 准备三台虚拟机 10.47.76.94 node-1 10.47.76.95 node-2 10.47.76.96 node-3 下载cephadm [rootnode-1 ~]# yum install cephadm Last metadata expiration check: 0:11:31 ago on Tue 21 Nov 2023 10:00:20 AM CST. Dependencies resolved. Package …

6 个有效且可用的顶级 Android 数据恢复工具

经过测试 42 种数据恢复软件产品&#xff0c;发现奇客数据恢复安卓版是 Android 设备的最佳选择。 过去几十年来&#xff0c;我一直在科技行业工作&#xff0c;经常帮助人们应对计算机灾难&#xff0c;包括丢失数据。 Android 数据恢复应用程序不在您的设备上运行&#xff0c…

教育+AIGC开局之年:教育派作业帮、科技派科大讯飞同路不同道

配图来自Canva可画 与往年相比&#xff0c;今年的双11显得格外冷清&#xff0c;GMV&#xff08;商品交易总额&#xff09;数据和增长数据无人提及&#xff0c;京东、淘宝天猫、抖音、快手等平台的火药味都淡了。一片祥和有序的双11氛围中&#xff0c;昔日的K12教育企业与科技企…

OpenMLDB SQL 开发调试神器 - OpenMLDB SQL Emulator

今天为大家介绍一款来自 OpenMLDB 社区的优秀独立工具 - OpenMLDB SQL Simulator&#xff08;https://github.com/vagetablechicken/OpenMLDBSQLEmulator&#xff09; &#xff0c;可以让你更加高效方便的开发、调试 OpenMLDB SQL。 为了高效的实现时序特征计算&#xff0c;Op…

芯片设计—低功耗isolation cell

&#xff08;一&#xff09;低功耗isolation cell的目的 低功耗架构设计需要前后端拉通规划&#xff0c;前端设计有PMU功耗管理单元&#xff0c;比如A模块电压常开&#xff0c;B模块电压可关断&#xff0c;那么请思考&#xff0c;当B模块关断电压后&#xff0c;B模块输出到A模…

美国服务器在大陆连不上怎么回事?

​  在租用任何美国服务器之前&#xff0c;都需要先搞清楚一些使用问题&#xff0c;毕竟服务器能够不间断地访问也是站在们所期望的。但有时&#xff0c;美国服务器网站或许也会突然出现在大陆打不开的情况&#xff0c;在面临这种情况时&#xff0c;我们应该怎么做? 查看连不…