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

大连网站建设方案最全磁力搜索引擎

大连网站建设方案,最全磁力搜索引擎,wordpress 分类目录 关键词,十大社区团购平台有哪些⭐️个人主页:小羊 ⭐️所属专栏:Linux 很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~ 目录 持续更新中...数组、链表点击消除环形链表环形链表 II 栈、队列树 持续更新中… 数组、链表 点击消除 AB5 点击消除 这个题很容…
头像
⭐️个人主页:@小羊
⭐️所属专栏:Linux
很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~

动图描述

目录

  • 持续更新中...
    • 数组、链表
      • 点击消除
      • 环形链表
      • 环形链表 II
    • 栈、队列


持续更新中…


数组、链表

点击消除

  • AB5 点击消除

在这里插入图片描述
这个题很容易想到用“栈”,但是创建一个stack最后还要转换成字符串,可以用string代替栈。
string的接口很多且实用,常见的接口基本都有:

在这里插入图片描述

这个题比较坑的是它说如果字符串为空串则返回0,谁想到返回的是"0",我试着返回0咋都过不去,最后吐了!都怪我太年轻了!

#include <iostream>
using namespace std;int main() 
{string str, st;cin >> str;for (char ch : str){if (!st.empty() && st.back() == ch){st.pop_back();continue;}st.push_back(ch);}cout << (st.empty() ? "0" : st);return 0;
}

环形链表

  • Leetcode——环形链表

在这里插入图片描述

快慢指针法: 快指针和慢指针初始时指向头节点,当快指针指向和快指针指向节点内的next指针不为空时,快指针一次走两步,慢指针一次走一步,快指针入环后走N圈后慢指针入环,当快指针和慢指针相等时说明存在环,如果出循环则说明不存在环。

关键的地方是快指针一次走两步,慢指针一次走一步,如果存在环则快指针和慢指针一定会相遇。为什么一定会相遇呢?
如果存在环,假设当慢指针入环时快指针距离此时慢指针的位置为N,则接下来每当快指针追赶慢指针一次,它们的距离就减一,直到减为0,此时快慢指针就相遇了。

在这里插入图片描述

bool hasCycle(struct ListNode *head) {struct ListNode* fast = head, *slow = head;while (fast && fast->next){fast = fast->next->next;slow = slow->next;if (fast == slow){return true;}}return false;
}

环形链表 II

  • Leetcode——环形链表 II

在这里插入图片描述

还是快慢指针,当快慢指针相遇时我们让meet指针指向相遇时的节点,然后让头指针headmeet指针一步步地向后走,当两指针相遇时指向的节点就是链表开始入环的第一个节点。为什么这两个指针一定会相遇在链表开始入环的第一个节点?

假设头指针距离链表开始入环的第一个节点的长度为L,meet指针相距链表开始入环的第一个节点的距离是N,环的长度为C,当慢指针入环时快指针走了x圈,因为快指针的速度是慢指针的2倍,那我们可以得到下面的等式:

  • 2(L + N) = L + X*C + N

化简得:L = X*C - N,由这个等式可以得出headmeet相遇是必然的。
在这里插入图片描述

struct ListNode *detectCycle(struct ListNode *head) {struct ListNode* fast = head, *slow = head;while (fast && fast->next){fast = fast->next->next;slow = slow->next;if (fast == slow){struct ListNode* meet = fast;while (head != meet){head = head->next;meet = meet->next;}return meet;}}return NULL;
}

栈、队列


本篇文章的分享就到这里了,如果您觉得在本文有所收获,还请留下您的三连支持哦~

头像
http://www.dtcms.com/wzjs/345420.html

相关文章:

  • 版式设计素材网站百度seo和sem
  • 万州做网站事件营销的案例有哪些
  • 网站建设的费用是多少自己如何注册一个网站
  • 网站免费部署58网络推广
  • 开封做网站的公司网站首页seo关键词布局
  • 高校网络网站建设意义及措施广告信息发布平台
  • 网站开发项目经理工资在线刷关键词网站排名
  • 了解互联网 网站怎么做推广和宣传
  • 做企业网站流程广告网页
  • 自己做竞猜网站挣钱吗惠州seo建站
  • 网站交互怎么做的太原网站建设优化
  • 网站建设sql语句留言板windows优化大师可以卸载吗
  • 盗版做的最好的网站宁波专业seo外包
  • 广东省 网站建站珠海网站seo
  • 手机网站改版了爱站工具网
  • 哈尔滨网站推广公司外贸网站
  • 成都高级网站建设seo的中文含义
  • 环保行业网站建设怎么在百度发帖
  • 澧县网站设计百度推广河南总部
  • 做直播的在相亲网站交友cba最新消息
  • 购物网站app建网络平台要多少费用
  • 昌邑营销型网站建设品牌推广营销
  • 招聘网站如何建设网络营销的十种方法
  • 怎么对网站做超链接测试百度推广账号出售
  • 抄底券网站怎么做的友情链接的形式
  • 网站推广效果自媒体平台收益排行榜
  • wordpress 网站备份比较靠谱的推广平台
  • 免费的制作手机网站平台今日国内最新新闻
  • 163企业邮箱客服苏州seo网站系统
  • 做商城网站哪家好西地那非