当前位置: 首页 > news >正文

房产网站开发报价做网站备案是什么意思

房产网站开发报价,做网站备案是什么意思,合肥网页设计班,图书网站建设实训心得19. 删除链表的倒数第 N 个结点 - 力扣(LeetCode) 1.暴力法 思路 (1)先获取链表的长度L (2)然后再次遍历链表到L-n的位置,直接让该指针的节点指向下下一个即可。 2.哈希表 思路 &#xff0…

19. 删除链表的倒数第 N 个结点 - 力扣(LeetCode)

1.暴力法

思路

(1)先获取链表的长度L

(2)然后再次遍历链表到L-n的位置,直接让该指针的节点指向下下一个即可。

2.哈希表

思路

(1)将链表中所有节点都加入到哈希表中,其中哈希表的格式为HashMap<Integer,ListNode>,前面表示节点的位置,后面是节点。

(2)根据(1)可以知道链表的总长度nums,倒数第n个节点的位置为del=nums-n+1;

(3)然后取出del-1与del+1位置的节点,让del-1的下一个节点为del+1即可。

ps:需要考虑被删除的节点是否开头节点或者结尾节点。开头直接下一个,结尾直接del-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 init = head;HashMap<Integer,ListNode> map =new HashMap<>();int count=0;while(head!=null){map.put(++count,head);head=head.next;}int nums=count;int del=nums-n+1;if(del==1){return init.next;}if(del==nums){if(nums==1){return new ListNode();}else{ListNode p1 = map.get(del-1);p1.next=null;return init;}}ListNode p1 = map.get(del-1);ListNode p2 = map.get(del+1);p1.next=p2;return init;}
}

3.栈

思路

(1)将全部节点入栈。

(2)然后用for循环弹出去n个节点,然后让最后的节点的next等于next.next

ps:初始化的时候设置一个空节点指向head,防止全部弹出去后next.next报错.

具体代码
/*** 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 init = new ListNode(0,head);Deque<ListNode> stack = new LinkedList<ListNode>();ListNode cur = init;while(cur!=null){stack.push(cur);cur=cur.next;}for(int i=0;i<n;i++){stack.pop();}ListNode n1 = stack.peek();n1.next=n1.next.next;return init.next;}
}

4.双指针

思路

设计快慢指针,其中快指针比慢指针多走n次,等快指针到null的时候,慢指针所在的位置就是要弹出的位置的前一个

ps:(1)其实多走了n+1步,因为需要慢指针走到要弹出位置的前一个节点。

(2)慢指针是0节点并指向第一个节点head,快指针一开始就指向head,这样就算长度为1的链表,slow慢指针的next.next也不会报错,否则出现空指针异常。

具体代码
/*** 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 init = new ListNode(0,head);ListNode fast = head;ListNode slow = init;for(int i=0;i<n;i++){fast=fast.next;}while(fast!=null){fast=fast.next;slow=slow.next;}slow.next=slow.next.next;return init.next;}
}

http://www.dtcms.com/a/458969.html

相关文章:

  • 东台做网站找哪家好备案网站可以做论坛么
  • 网站推荐几个免费的在线做网站午夜伦理
  • 源码开发网站建设黄岩区信誉好高端网站设计
  • 家装网站建设案例wordpress微信图文采集
  • 【mysql事务】
  • 网络游戏网站网址大全计算机女生就业方向
  • 中海建筑建设有限公司网站做网店去哪个网站货源好
  • LeetCode刷题记录(持续更新中)
  • 北京网站建设公司华网制作作房地产销售税率是多少
  • 家电维修网站建设新闻资讯网站备案
  • 做一个网站赚钱吗石家庄58同城招聘信息
  • 外贸优化网站制作网站开发费用是无形资产
  • 营销型网站具备的二大能力网站建设要做哪些工作
  • 网站设计模板htmlwordpress调整配置
  • 做设计的网站商家入驻信誉好的高密网站建设
  • 上海最好的网站是什么谁有网站备案号
  • js 5哈哈哈哈哈哈哈哈
  • 齐齐哈尔住房和城乡建设局网站wap电影网站建设
  • 毕业视频代做网站毕业设计购物网站怎么做
  • 基于51单片机的温室植物生长监测系统
  • 公司网站怎么注册网站搜索引擎优化方案范文
  • 苏州优化网站百度一下知道官网
  • 深圳住房建设局网站申报商丘seo优化
  • 098-python列表_切片_slice_开始_结束
  • 微分几何的张量统一公式-迹公式(映射公式)
  • 做灯箱的网站砀山网站建设
  • 确山专业网站建设笑话网站模板
  • 六亲无靠人格:心理机制、社会影响与应对策略的深度分析概念界定与基本内涵
  • 网站开发工具选用原则自助建站百度
  • Python 3.14 发布(2025 年 10 月 7 日)