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

网站分享到朋友圈如何把一个关键词优化到首页

网站分享到朋友圈,如何把一个关键词优化到首页,自己建一个网站需要多少钱?,网站开发公司起名若链表中的某个节点,既不是链表头节点,也不是链表尾节点,则称其为该链表的「中间节点」。 假定已知链表的某一个中间节点,请实现一种算法,将该节点从链表中删除。 例如,传入节点 c(位于单向链…

若链表中的某个节点,既不是链表头节点,也不是链表尾节点,则称其为该链表的「中间节点」。

假定已知链表的某一个中间节点,请实现一种算法,将该节点从链表中删除。

例如,传入节点 c(位于单向链表 a->b->c->d->e->f 中),将其删除后,剩余链表为 a->b->d->e->f

示例:

输入:节点 5 (位于单向链表 4->5->1->9 中)
输出:不返回任何数据,从链表中删除传入的节点 5,使链表变为 4->1->9

这道题的方法很简单,只要清楚链表的储存方式就可以。已知给出的中间节点为node,那么我们想要删除这个节点,只需要将这个节点的值变为下一个节点的值,我们就得到了两个值相同的节点,然后我们将下下个节点指向需要删除节点的下一个节点,就完成删除了。实际上是删除了中间节点的下一个节点,但是因为我们因为将下一个节点的值赋给中间节点,因此,我们可以直接删除中间节点的下一个节点。这样说可能不太清楚,其实我们把我们要删除的节点定义为当前节点,那么我们就可以直接让当前节点的前驱节点指向后继节点就实现了删除。类比到这个题里,当前节点并不是题目中给出的中间节点,而是它的下一个节点,因此我们先将中间节点的值变为下一个节点的值,再删除下一个节点,那么实际看到的结果就是删除了中间节点。

leetcode代码

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:void deleteNode(ListNode* node) {node->val=node->next->val;node->next=node->next->next;}
};

其实我一开始没有注意到这个题是直接给出要删除的节点,我以为的中间节点是要自己找的。理解错题意了。那么如果要找真正意义上的中间节点该怎么做呢?请往下看

其实找中间节点,主要是看数的总数为偶数的情况,到底是选择靠前的那个节点还是靠后的节点,而思路和上一个找倒数第k个节点的题类似,都是使用双指针去找,同样将两个指针先指向头节点,而中间节点就是在1/2的位置,那么我们只要让两个指针的移动速度为两倍差,但是如果数的个数为偶数的话,那么找到的节点就是靠后的那个节点。

leetcode代码

class Solution {
public:ListNode* middleNode(ListNode* head) {if(head==nullptr&&head->next==nullptr){return head;}ListNode *p = head;ListNode *q = head;while(p != nullptr && q->next != nullptr) {q = q->next;p = p->next->next;}return q;} 
};

那么如果我们要找到的是靠前的那个节点呢?

class Solution {  
public:  ListNode* middleNode(ListNode* head) {  if (head == nullptr || head->next == nullptr) {  // 如果链表为空或只有一个节点,则直接返回头节点  return head;  }  ListNode *p = head;  ListNode *q = head;  while (p->next != nullptr && p->next->next != nullptr) {  // p 每次移动两步,直到 p->next 或 p->next->next 为空  p = p->next->next;  // q 每次移动一步  q = q->next;  }  // 当 p 无法再安全地前进两步时(即 p->next 或 p->next->next 为空),q 指向“靠前的”中间节点  return q;  }  
};

http://www.pjxw.cn/news/25408.html

相关文章:

  • 公司网站建设佛山哪家专业疫情最新数据
  • 石家庄网站优化推广网络营销工具有哪些?
  • 大连网站建站seo是干啥的
  • 网站的工作简报怎么做新媒体营销案例
  • php是做网站美工的吗网站备案查询系统
  • 营销型网站建设公司电话网站页面布局和样式设计
  • 网站制作西安站长seo
  • 国外图片设计网站有哪些百度seo排名优化价格
  • 湛江 网站建设公众号推广引流
  • 廊坊手机模板建站百度指数搜索榜度指数
  • 做网站软件图标是一个箭头的湖南产品网络推广业务
  • 做企业网站的架构图seo权重查询
  • wordpress编辑者无法上传图片河南网站优化公司
  • 滨州做网站公司灰色行业关键词优化
  • 华夏名网网站建设哈尔滨最新今日头条新闻
  • 可以做动画的网站都有哪些软件下载各城市首轮感染高峰期预测
  • 成人高考成绩查询关键词推广seo怎么优化
  • 淘宝客做网站链接网络营销策划书800字
  • 十堰网站制作北京seo关键词排名
  • 网站建设的英语怎么说seo常用工具
  • 可以拔下来做的网站吗中国国家培训网正规吗
  • 免费软件在线下载如何优化关键词提升相关度
  • 个人网站设计分类百度联系方式
  • 简历网站推荐线上线下推广方案
  • 北京广告公司名录seo优化网站优化
  • 最浪漫的编程代码可复制厦门seo代运营
  • 湖北省城乡建设厅网站北京网站优化托管
  • php做网站时间代码凡科建站登录
  • 龙华品牌网站制作郑州百度网站优化排名
  • 做网站培训班windows优化大师win10