Python-链表常用操作方法

在 Python 中,可以使用类来表示链表节点,然后通过链接节点来构建链表。以下是一些 Python 中链表的常用方法和操作:

  1. 定义链表节点类

    class ListNode:def __init__(self, val=0, next=None):self.val = valself.next = next
    
  2. 创建链表

    # 创建链表的节点
    node1 = ListNode(1)
    node2 = ListNode(2)
    node3 = ListNode(3)# 构建链表
    node1.next = node2
    node2.next = node3# 返回链表的头节点
    head = node1
    
  3. 遍历链表

    current = head
    while current:print(current.val)current = current.next
    
  4. 插入节点

    new_node = ListNode(4)
    new_node.next = node2.next
    node2.next = new_node
    
  5. 删除节点

    node2.next = node2.next.next
    
  6. 获取链表长度

    current = head
    length = 0
    while current:length += 1current = current.next
    
  7. 反转链表

    def reverseList(head):prev = Nonecurrent = headwhile current:next_node = current.nextcurrent.next = prevprev = currentcurrent = next_nodereturn prev
    
  8. 查找链表中的节点

    def findNode(head, target):current = headwhile current:if current.val == target:return Truecurrent = current.nextreturn False
    

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

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

相关文章

秒杀设计思路

目录 1. 系统前端优化 2. 应用层优化 3. 负载均衡 4. 业务层优化 5. 数据库优化 6. 缓存策略 7. 后端优化 8. 安全防护 9. 系统监控和预警 秒杀系统设计需要考虑高并发、高可用、低延迟等因素,以下是一些常见的设计方案: 1. 系统前端优化 静态…

TensorFlow Lite 在安卓开发中的应用及其关键组件研究

摘要 随着移动设备计算能力的增强和人工智能技术的发展,Google 推出的 TensorFlow Lite 成为了在安卓平台上实现本地机器学习模型部署的重要工具。本文旨在全面探讨 TensorFlow Lite 在安卓开发中的角色、优势与局限性,分析其典型应用场景,并…

Python环境搭建—安装PyCharm开发工具

🥇作者简介:CSDN内容合伙人、新星计划第三季Python赛道Top1 🔥本文已收录于Python系列专栏: 零基础学Python 💬订阅专栏后可私信博主进入Python学习交流群,进群可领取Python视频教程以及Python相关电子书合…

基于SpringBoot的“网上书城管理系统”的设计与实现(源码+数据库+文档+PPT)

基于SpringBoot的“网上书城管理系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SpringBoot 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能结构图 系统首页界面图 用户注册界面…

传输层 --- TCP (上篇)

目录 1. TCP 1.1. TCP协议段格式 1.2. TCP的两个问题 1.3. 如何理解可靠性 1.4. 理解确认应答机制 2. TCP 报头中字段的分析 2.1. 序号和确认序号 2.1.1. 序号和确认序号的初步认识 2.1.2. 如何正确理解序号和确认序号 2.2. TCP是如何做到全双工的 2.3. 16位窗口大小…

[C++初阶]初识C++(二)

建议先看完上篇:[C初阶]初识C(一)—————命名空间和缺省函数-CSDN博客 本篇部分代码和文案来源:百度文库,知乎,比特就业课 1.函数重载 自然语言中,一个词可以有多重含义,人们可以通过上下文来判断该词真…

低代码革新:软件开发的未来潜力与创新路径探索

过去的一年,挑战与机遇并存。人们一边忧虑市场经济下行所带来的新的增长难题、裁员危机,一边惊叹于AIGC、量子技术等领域不断涌现新的创新成果。 时代发生了改变,传统“互联网”的模式已走入尾声,新一轮的科技革命与产业变革正在到…

当我入职了电商数据Python程序员时……

当年刚入职电商数据爬虫程序员这个岗位的时候,真的是慷慨激昂,富有激情和执着,每天开开心心投入到新工作中。然而,刚开始面对的第一个挑战是爬取电商网站的商品详情数据时遇到了滑块验证码。尝试了各种方法,但都无济于…

IntelliJ IDEA下载及安装教程(Windows操作系统)

一、下载IntelliJ IDEA 1、访问JetBrains官方网站 打开浏览器,输入网址 https://www.jetbrains.com/idea/ 进入IntelliJ IDEA官方主页。 2、选择产品版本 IntelliJ IDEA分为免费的Community Edition(社区版)和付费的Ultimate Edition&…

不妨借一步说话,你想知道的关于设计模式的种种

可以点击关于我联系我获取完整PDF (VX:mm14525201314) 1. 请列举出在 JDK 中几个常用的设计模式? 单例模式(Singleton pattern)用于 Runtime,Calendar 和其他的一些类中。 工厂模式(Factory pattern&…

java Web 辅助学习管理系统idea开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点 java Web 辅助学习管理系统是一套完善的信息管理系统,结合java 开发技术和bootstrap完成本系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 前段主要技术 bootstr…

口语 4.6

drop the gun :逃避 radically 极大程度地 vastly cognition:认知能力 flaw缺陷 flawless:没有缺陷 interface:接口,交流处 retain:保留 down the rabbit hole:进入未知领域了 wrap your head aro…

代码随想录-算法训练营day02【滑动窗口、螺旋矩阵】

专栏笔记:https://blog.csdn.net/weixin_44949135/category_10335122.html https://docs.qq.com/doc/DUGRwWXNOVEpyaVpG?uc71ed002e4554fee8c262b2a4a4935d8977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II ,总结 建议…

深度学习入门:传统神经网络(前馈型神经网络、反馈型神经网络和自组织神经网络)

传统神经网络是相对于其他类型的神经网络,如卷积神经网络(CNN)、循环神经网络(RNN)、图神经网络(GNN)等而言的。这些不同类型的神经网络都是为了解决不同的问题而设计的,它们各自具有…

SFTP服务详解:安全高效的文件传输新选择

在数字化日益盛行的今天,文件传输已成为我们日常生活和工作中不可或缺的一部分。然而,传统的文件传输方式往往存在着安全隐患和效率低下的问题。幸运的是,SFTP(SSH File Transfer Protocol)服务的出现为我们提供了一个安全、高效的文件传输解决方案。今天,就让我们一起深…

每天学习一个Linux命令之ssh

每天学习一个Linux命令之ssh 介绍 在Linux系统中,ssh命令是一个非常常用且强大的工具。Secure Shell(SSH)是一种用于安全远程登录和执行命令的网络协议。它提供了对远程服务器进行加密通信和身份验证的功能。本文将详细介绍SSH命令并列举出…

@RequstBody,IOC,DI,@Autowired,@Resource,lombok,

要使用Jason数据格式必须用post方法,因为是通过请求体传送的,get没有请求体 Data不包括有参构造和无参构造方法

金蝶Apusic应用服务器 未授权目录遍历漏洞复现

0x01 产品简介 金蝶Apusic应用服务器(Apusic Application Server,AAS)是一款标准、安全、高效、集成并具丰富功能的企业级应用服务器软件,全面支持JakartaEE8/9的技术规范,提供满足该规范的Web容器、EJB容器以及WebService容器等,支持Websocket1.1、Servlet4.0、HTTP2.0…

Java入门教程||Java Applet基础

Java Applet基础 applet是一种Java程序。它一般运行在支持Java的Web浏览器内。因为它有完整的Java API支持,所以applet是一个全功能的Java应用程序。 如下所示是独立的Java应用程序和applet程序之间重要的不同: Java中applet类继承了 java.applet.Applet类Applet…

ARM Cordio WSF(一)——架构简介

1. 关于WSF WSF(wireless Software Foundation API),是一个RTOS抽象层。Wireless Software Foundation software service and porting layer,提供实时操作系统所需的基础服务,可基于不同平台进行实现,移植…