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

郑州做网站最好的公司5条国内最新新闻

郑州做网站最好的公司,5条国内最新新闻,域名去哪里买,微信公众号菜单跳转网页怎么制作算法思想#xff1a; 使用了双指针法。下面是详细的算法思想#xff1a; 1. 引入虚拟头节点#xff08;dummy node#xff09; 为了处理链表的一些边界情况#xff08;比如删除头节点#xff09;#xff0c;我们在链表的头部引入了一个虚拟节点 dummy#xff0c;并让…算法思想 使用了双指针法。下面是详细的算法思想 1. 引入虚拟头节点dummy node 为了处理链表的一些边界情况比如删除头节点我们在链表的头部引入了一个虚拟节点 dummy并让它指向原来的头节点 head。这样无论我们要删除哪个节点处理过程都变得更加统一和简单。 2. 定义两个指针快指针fast和慢指针slow 我们使用两个指针fast 和 slow最初都指向虚拟头节点 dummy。快指针 fast 会比慢指针 slow 超前移动 n1 步。这样当 fast 指向链表末尾null时slow 刚好指向要删除节点的前一个节点。 3. 移动快指针 首先快指针 fast 先向前移动 n1 步这样可以确保快指针和慢指针之间相隔 n 个节点。 4. 同时移动快慢指针 接下来快慢指针一起向前移动直到快指针到达链表的末尾。这时慢指针 slow 就刚好处于要删除节点的前一个位置。 5. 删除节点 现在慢指针 slow 的下一个节点就是我们需要删除的节点。通过 slow.next slow.next.next我们跳过了这个节点达到了删除的目的。 6. 返回新的头节点 最后返回 dummy.next。注意链表的头节点可能发生了变化如果原来的头节点被删除因此我们返回虚拟节点 dummy 的下一个节点作为新的链表头节点。 代码核心思路总结 通过快慢指针法仅需遍历链表一次一次循环就可以找到倒数第N个节点并将其删除时间复杂度为 O(L)其中 L 是链表的长度。空间复杂度为 O(1)因为只用了常数级别的额外空间。 示例分析 假设输入链表为 [1, 2, 3, 4, 5]n 2即删除倒数第二个节点。 初始化fast 和 slow 都指向虚拟节点 dummy。快指针前移fast 先向前移动 n1 3 步指向节点 3。同步移动同时移动 fast 和 slow直到 fast 指向 null此时 slow 指向节点 3 的前一个节点即节点 2。删除节点通过 slow.next slow.next.next 删除节点 4最终链表变为 [1, 2, 3, 5]。 这样就成功地删除了倒数第2个节点。 java 实现代码 /*** 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 dummyNode new ListNode(0);dummyNode.next head;ListNode slow dummyNode; //dummyNode,slow,fast都是引用类型ListNode fast dummyNode;for(int i 0; i n; i) { //快指针先移动 n1 步fast fast.next;}while(fast ! null) { //然后快慢指针一起移动slow slow.next;fast fast.next;}slow.next slow.next.next;return dummyNode.next;} }
http://www.hkea.cn/news/14256338/

相关文章:

  • 网站登录慢眼镜网站怎么做竞价
  • 高端网站建设与发展打开app登录
  • 网站运营的目的及意义龙华公司
  • 网站建设计划书模板百度区域代理
  • 公司网站必须做可信认证吗开发一个app要多少钱呢
  • dede网站 地图什么做做图素材网站 千
  • app公司网站建设桂林漓江景区
  • 网站建设需要学ps吗大连招标信息网
  • 上海网站建设价深圳机械网站建设
  • 如何建设一个好的企业网站涉县移动网站建设
  • react 做网站保健品网站源代码
  • gateface能用来做网站吗做专业网站设计多少钱
  • 广宁县住房建设局网站免费企业信息发布平台
  • 天津建设项目招投标网站做网站需要那些技术
  • 网站详情页怎么做微信公众号分销功能
  • 富通建设工程有限公司网站网站设计酷站
  • 手表网站建设规划书wordpress联系人表单
  • 东莞网站建设工作推广怎么推
  • 网页 制作网站佛山网站提升排名
  • 众意网站建设zyecnwordpress sina
  • 软考高级网络规划设计师seo排名规则
  • 整站关键词排名优化淘宝客wordpress模板
  • 昆山h5网站建设怎么做二维码转到网站
  • 合肥网站建设平台个人网站一定要备案吗
  • 网站标签怎么做跳转广州高端网站制作公司
  • 郑州网站建设灵秀广州网页设计公司推荐
  • 无锡工程建设招标网站外贸进出口代理公司
  • 网站收录情况网站制作 番禺
  • 筑巢网站后台管理系统建一个自己的网站有什么用
  • 郑州网站seo分析网站设计的第一步是