day11-12【代码随想录】删除链表的倒数第N个节点、链表相交、字符串中第二大的数字
创始人
2024-03-07 16:52:11

文章目录

  • 前言
  • 一、删除链表的倒数第N个节点(力扣19)
  • 二、链表相交(力扣160)
  • 三、字符串中第二大的数字(力扣1796)


前言

1、删除链表的倒数第N个节点
2、链表相交
3、字符串中第二大的数字

一、删除链表的倒数第N个节点(力扣19)

给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。

在这里插入图片描述
解题思路–快慢指针
关键在于怎么找倒数第n个节点:快指针先走n+1步,快慢指针同时出发,当快指针=null时,慢指针此时所在位置就是要删除节点的前驱
在这里插入图片描述
在这里插入图片描述

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode removeNthFromEnd(ListNode head, int n) {ListNode dummy = new ListNode(-1,head);ListNode fast=dummy;ListNode slow=dummy;int count = 0;while(count++//快指针先走n+1步fast = fast.next;}while(fast!=null){fast=fast.next;slow=slow.next;}slow.next=slow.next.next;return dummy.next;}
}

在这里插入图片描述

二、链表相交(力扣160)

给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。

在这里插入图片描述
解题思路:
在这里插入图片描述

在这里插入图片描述

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode(int x) {*         val = x;*         next = null;*     }* }*/
public class Solution {public ListNode getIntersectionNode(ListNode headA, ListNode headB) {ListNode curA = headA;ListNode curB = headB;//求链表A的长度int lengthA=0;while(curA!=null){lengthA++;curA=curA.next;}//求链表B的长度int lengthB=0;while(curB!=null){lengthB++;curB=curB.next;}curA = headA;curB = headB;//让curA为最长链表的头 if(lengthAint tempLength = lengthA;lengthA = lengthB;lengthB = tempLength;ListNode tempNode = curA;curA = curB;curB = tempNode;}int step = lengthA-lengthB;//链表A的指针先往前走step+1个位置for(int i=0;icurA=curA.next;}while(curA!=null){if(curA==curB){return curA;}curA = curA.next;curB = curB.next;}return null;}
}

在这里插入图片描述

三、字符串中第二大的数字(力扣1796)

给你一个混合字符串 s ,请你返回 s 中 第二大 的数字,如果不存在第二大的数字,请你返回 -1 。
混合字符串 由小写英文字母和数字组成。

在这里插入图片描述

class Solution {public int secondHighest(String s) {char[] chars = s.toCharArray();int max1=-1;int max2=-1;for(char c : chars){if(Character.isLetter(c))continue;int num = c-'0';if(num>max1){max2=max1;max1=num;}else if(nummax2){max2=num;}}return max2;}
}

在这里插入图片描述


相关内容

热门资讯

猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...