力扣--19删除链表中的倒数第n个节点
题目
python代码
正序删除
将倒数第n个转换成正数的处理。然后分为头、尾、中三种情况处理:
def removeNthFromEnd( head, n):pointer = headlength = 0while pointer:pointer = pointer.nextlength += 1if length == 1:return Nonepointer = headif n >= length:head.val = head.next.valhead.next = head.next.nextelse:if n == 1:for i in range(length - 2):pointer = pointer.nextpointer.next = Noneelse:for i in range(length - n - 1):pointer = pointer.nextpointer.next = pointer.next.nextreturn head
双指针
用两个相差n位的指针遍历链表,用右指针判断,用左指针进行操作。
def removeNthFromEnd(head, n):if head.next == None:return Noneleft = right = headsi = 0while si < n:si += 1right = right.nextif right == None:head = head.nextreturn headwhile right.next != None:left = left.nextright = right.nextif n == 1:left.next = Noneelse:left.next = left.next.nextreturn head
力扣--19删除链表中的倒数第n个节点相关推荐
- 力扣—— 19. 删除链表的倒数第 N 个结点(java)、剑指 Offer 22. 链表中倒数第k个节点(java)
19. 删除链表的倒数第 N 个结点(java) 一.题目描述 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点. 进阶:你能尝试使用一趟扫描实现吗? 输入:head = [1,2,3 ...
- LeetCode19. Remove Nth Node From End of List 删除链表中的倒数第n个位置的元素
前言 本文是LeetCode19. Remove Nth Node From End of List解法,这个题目需要删除链表中的倒数第n个位置的元素 代码 # -*- coding: utf-8 - ...
- (力扣)LeetCode19. 删除链表的倒数第 N 个结点(C++/C语言)
一.环境说明 本文是 LeetCode 19题 : 删除链表的倒数第 N 个结点,使用c语言实现 使用双指针方法,算法性能较好. 测试环境:Visual Studio 2019 二.代码展示 快慢指针 ...
- python删除链表的倒数第k个节点,剑指offer 链表中的倒数第K个节点 Python and C++
题目描述 输入一个链表,输出该链表中倒数第k个结点. 思路 假设链表中的节点数大于等于k个,那么一定会存在倒数第k个节点,首先使用一个快指针先往前走k步,然后两个指针每次走一步,两个指针之间始终有k的 ...
- 删除链表中全部值为k的节点
1. 问题描写叙述 给定一个单链表,删除当中值为k的全部节点.比如:1→2→6→3→4→5→6,删除当中值为6的节点,返回:1→2→3→4→5. 2. 方法与思路 这是一个简单的链表操作题.删除是要考 ...
- 【力扣-JZ22】链表中倒数第k个结点
- 力扣1047. 删除字符串中的所有相邻重复项(JavaScript)
var removeDuplicates = function(s) {let arr=[]for (const x of s){//如果前一个相同,则删除前一个,且不加入当前值,查找下一个if(ar ...
- 【力扣(LeetCode)】【C/C++】【19.删除链表的倒数第 N 个结点】
学习时间: 2023年1月30日 题目描述: 题解分享: // 作 者 : 繁 华 倾 夏 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h&g ...
- LeetCode-链表-19. 删除链表的倒数第 N 个结点
描述: 19. 删除链表的倒数第 N 个结点 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点. 进阶:你能尝试使用一趟扫描实现吗? 示例 1: 输入:head = [1,2,3,4, ...
最新文章
- Python 解一道江苏 小升初 数学题,如此变态,看不起来谁?
- java -version cmd_java如何运行步骤cmd?Java执行cmd命令方法有哪些?
- linux线程同步(3)-读写锁
- RestFul通信风格
- ACM-ICPC 2018 徐州赛区网络预赛 Morgana Net
- hdu 6086 Rikka with String(AC自动机+状压dp)
- 面向接口编程 (噬菌体) 不错的接口
- 【同行说技术】Java程序员小白变大神必读资料汇总(三)
- early stopping softmax批量梯度下降(BGD)手动实现
- bootstrap 4 自动水平居中
- 如何用c语言写一个简答的整人小程序
- 使用linux的MTD tests support测试flash性能
- PTA顺序表基本操作
- 软件测试自动化测试工具有哪些?常见的自动化工具简介
- Sniffer软件简介
- 置信区间 VS 置信水平
- vue全家桶指的是哪些?
- CCRC认证是什么,ISCCC与CCRC是什么关系?
- 弗洛伊德算法(floyd)
- 三顶红帽子和两顶白(蓝)帽子。
热门文章
- python 打开本地程序发生异常_Python中的异常处理
- python布尔类型运算_Python对象类型及其运算方法(详解)
- 格子染色问题 java_《Mathematical Olympiad——组合数学》——染色问题
- Deformable-DETR的学习笔记
- ESP32开发 0.windows Vscode开发环境搭建,基于esp-idf-V4.2 | Cmake | Vscode插件
- MQTT.fx客户端MQTT接入阿里云物联网平台,登录、订阅、发布消息
- Linux中shell提示符定制
- Java语言程序设计(序)
- 【MySQL】事务隔离级别
- 项目经理的商务指南系列之二:认识责任(敏捷开发,专家与杂家)