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

哪些网站可以查企业信息优化疫情防控 这些措施你应该知道

哪些网站可以查企业信息,优化疫情防控 这些措施你应该知道,建h5网站费用,tob主题做电影网站leetcode Hot 100系列 文章目录 一、翻转链表二、反转链表 II三、K 个一组翻转链表总结 一、翻转链表 建立pre为空,建立cur为head,开始循环:先保存cur的next的值,再将cur的next置为pre,将pre前进到cur的位置&#xf…

leetcode Hot 100系列

文章目录

  • 一、翻转链表
  • 二、反转链表 II
  • 三、K 个一组翻转链表
  • 总结


一、翻转链表

  1. 建立pre为空,建立cur为head,开始循环:先保存cur的next的值,再将cur的next置为pre,将pre前进到cur的位置,再将cur往前进一步(利用刚刚保存的值),直到cur为nullptr

代码如下:

class Solution {
public:ListNode* reverseList(ListNode* head) {ListNode* cur=head;ListNode* pre=nullptr;while (cur!=nullptr){ListNode* temp=cur->next;cur->next=pre;pre=cur;cur=temp;}return pre; }
};

提示:小白个人理解,如有错误敬请谅解!

二、反转链表 II

  1. 这个和上面的区别就是从left开始,为了防止left为head,这样就没有p0了,所以要加入dummyhead,并且将dummyhead和head连起来
  2. 先要找到left位置的前一个作为p0,然后继续上面的操作,初始化pre为空,cur为p0的next,然后开始循环(循环的次数就是要翻转的个数):先保存cur的next位置,再将cur的next指向pre,随后pre到cur的位置,最后cur到之前保存的cur的next位置上,循环结束了之后,将p0的next的next指向cur,再才能将p0的next指向pre(如果这两个顺序反了,那由于先改变了p0的next的位置,再修改p0的next的next的时候,指向的位置就已经变了)
    代码如下:
class Solution {
public:ListNode* reverseBetween(ListNode* head, int left, int right) {ListNode* dummyhead=new ListNode(0);dummyhead->next=head;ListNode* p0=dummyhead;int m=left;m--;while (m--){   p0=p0->next;}ListNode* pre=nullptr;ListNode* cur=p0->next;int n=right-left+1;while (n--){ListNode* temp=cur->next;cur->next=pre;pre=cur;cur=temp;}p0->next->next=cur;p0->next=pre;return dummyhead->next;}
};

三、K 个一组翻转链表

  1. 设置dummyhead,并且令p0为dummyhead,这样p0才是要翻转的链表的前一个
  2. 由于k组翻转链表,所以要先统计一下一共有多少个,每次循环(翻转了k个链表)就将这个总数减k,然后看剩下的值到不到k,如果到了才能继续进行循环
  3. 设置pre为空,cur为p0的next,开始小循环,最后结束之后,先要保存一下p0的next作为下一个要翻转的链表的p0,然后再继续之前的操作,将p0的next的next置为cur,再将p0的next置为pre,最后将p0设置为之前保存的p0的next值,由下图中可知对于下一组k的链表来说,他们的p0应该是 1 这个节点,也就是最开始保存的保存的p0的next

    图源@灵茶山艾府
  4. 返回dummyhead的next
    代码如下:
class Solution {
public:ListNode* reverseKGroup(ListNode* head, int k) {ListNode* dummyhead=new ListNode(0);dummyhead->next=head;ListNode* curr=head;int count=0;while (curr!=nullptr){curr=curr->next;count++;}ListNode* p0=dummyhead;while (count>=k){   count-=k;ListNode* pre=nullptr;ListNode* cur=p0->next;int m=k;while (m--){ListNode* temp=cur->next;cur->next=pre;pre=cur;cur=temp;}ListNode* nxt=p0->next;p0->next->next=cur;p0->next=pre;p0=nxt;}return dummyhead->next;}
};

总结

  1. pre统一设置为空,cur设置为p0的next,使用临时变量接受cur的next,最后要更新p0的位置!
http://www.dtcms.com/wzjs/483953.html

相关文章:

  • 网站建设业务介绍婚恋网站排名前十名
  • 多用户建站系统源码网页怎么制作
  • 网站制度建设情况厦门关键词seo排名网站
  • 饮品店网站模板百度竞价关键词
  • 学做动态网站百度账号怎么注册
  • 网站5建设需要学什么条件百度怎么发免费广告
  • 清河网站建设设计费用网络营销公司做什么
  • 宁波网站建设风格营销网站建设选择原则
  • 电子商务网站设计的三大原则是搜资源的搜索引擎
  • 湖南省专业建设公司网站的机构线下推广都有什么方式
  • 用php做的企业网站作业快速优化网站排名的方法
  • 徐州模板建站定制网站google搜索引擎免费入口
  • 有哪些网站可以做任务返现网站怎么建立
  • 枣强网站建设公司广州优化疫情防控措施
  • 郑州做营销型网站建设个人如何做seo推广
  • 创业 建网站产品seo标题是什么
  • 简述营销网站建设包括哪些内容企业查询软件
  • 做套图下载的网站源码一键清理加速
  • 素材网站下载外贸出口平台网站
  • wordpress 做网站cpa游戏推广联盟
  • 供应商怎么找采购商seo 服务
  • 基金公司网站建设百度seo怎么做网站内容优化
  • 爬虫 做资讯网站关系营销案例
  • 北京大型网站优化百度新闻搜索
  • 网站上放个域名查询福州seo推广优化
  • wap网站建设是什么百度助手官网
  • 政府门户网站平台建设引流推广平台
  • 湖南百度seo排名点击软件企业网站优化报告
  • 返利网站怎么做的推广软件的app
  • 网站建设的问题疑问广州网站排名优化报价