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

多种语言网站建设专业的外贸网站建设

多种语言网站建设,专业的外贸网站建设,wordpress 联系人表单,群晖 wordpress 慢题目 删除链表的倒数第 N 个结点 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,3,4,5], n 2 输出:[1,2,3,5] 示例 2: 输入:head [1], n 1 输出&…

题目

  1. 删除链表的倒数第 N 个结点

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

示例 1:

输入:head = [1,2,3,4,5], n = 2

输出:[1,2,3,5]

示例 2:

输入:head = [1], n = 1

输出:[]

示例 3:

输入:head = [1,2], n = 1

输出:[1]

来源:力扣热题100 19. 删除链表的倒数第 N 个结点


思路(注意事项)

三个指针。
pre:删除节点的前置指针
p:删除节点
q :距离指针

  • 但也可以简化为两个指针,另外需要在输入的链表上加上头节点。 (详见ds简化版)

纯代码

class Solution {
public:ListNode* removeNthFromEnd(ListNode* head, int n) {int sum = 0;ListNode *t = head;while (t != nullptr) sum ++, t = t ->next;if (n == sum) return head -> next;if (head == nullptr || head -> next == nullptr) return nullptr;ListNode *pre = head, *p = pre -> next, *q = p;while (n --) q = q -> next;while (q != nullptr){q = q -> next;p = p -> next;pre = pre -> next;}pre -> next = p -> next;return head;}
};

题解(加注释)

class Solution {
public:ListNode* removeNthFromEnd(ListNode* head, int n) {// 计算链表的长度int length = 0;ListNode* t = head;while (t != nullptr) {length++;t = t->next;}// 如果删除的是头节点,直接返回头节点的下一个节点if (n == length) {return head->next;}// 如果链表为空或只有一个节点,返回空链表if (head == nullptr || head->next == nullptr) {return nullptr;}// 初始化指针ListNode* pre = head; // 指向要删除节点的前一个节点ListNode* p = pre->next; // 指向要删除的节点ListNode* q = p; // 用于遍历的指针// 将 q 移动到第 n 个节点while (n--) {q = q->next;}// 移动 pre、p 和 q,直到 q 到达链表末尾while (q != nullptr) {q = q->next;p = p->next;pre = pre->next;}// 删除节点pre->next = p->next;return head;}
};

(详见ds简化版)

题解(ds简化)

class Solution {
public:ListNode* removeNthFromEnd(ListNode* head, int n) {ListNode* L = new ListNode(0); // 创建虚拟头节点L->next = head;ListNode* fast = L;ListNode* slow = L;// 快指针先移动 n 步for (int i = 0; i <= n; i++) fast = fast->next;// 同时移动快慢指针,直到快指针到达链表末尾while (fast != nullptr) {fast = fast->next;slow = slow->next;}// 删除节点slow->next = slow->next->next;return L->next; // 返回结果链表的头节点}
};
http://www.dtcms.com/wzjs/838568.html

相关文章:

  • 织梦怎么修改网站模板怎么建网站快捷方式
  • 广州微网站建设案例wordpress redis缓存定时
  • 知乎 做照片好的网站网站图片模板
  • 网站建设开发实训报告总结国内做设备网站哪些好
  • 网站开发多少钱一个中国国家商标注册网官网
  • 做网站需要看的书网站排版怎么做
  • 做问卷赚钱的网站wordpress 增加页面
  • 做网站建设找哪家好自贡市网站建设
  • 烟台市建设工程质量检测网站网站建设开发教程
  • 如何升级网站后台高端企业网站建站程序
  • 做网站实训报告小程序跳转到网站
  • 网站建设哪家强wordpress 比较好的插件
  • 网站建设与维护学什么如何发布网站到域名
  • 外国人可以在中国做网站吗珠海模板网站建设公司
  • 网站惩罚查询做外贸流程详细步骤
  • 网站开发 源代码做网站需要多少屏
  • 长沙官网seo推广怎么提高seo排名
  • 网站系统制作企业培训课程有哪些内容
  • 紫色网站wordpress 询价记录
  • 天津做网站报价老域名网站不收录
  • 西双版纳北京网站建设关于数据库的网站开发
  • 微网站怎么自己做wordpress中文版插件下载
  • 免费 网站 模板小程序发布流程
  • 公司网站用个人备案可以网站推销怎么做ppt
  • html5做音乐网站wordpress企业站
  • 雁塔网站建设百度seo优化包含哪几项
  • 发卡平台网站建设花瓣网素材
  • 微餐饮建站费用如何建设招聘网站
  • 专业网站建设的软件外贸自助建站
  • 赣州建设企业网站百度小程序开发教程