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

哪家做网站性价比高dw网页制作详细步骤

哪家做网站性价比高,dw网页制作详细步骤,个人简历(电子版),oss怎么做网站链表的题目感觉很多的思路都是【快慢双指针】或【三状态指针】:pre, cur, next. 分享几题lc hot 100的链表题目~ 第一题: 首先直接的思路是:如何判断下一个指针指向的链表已被访问过?即访问到了已访问的值。 方法一:【哈希表】…

链表的题目感觉很多的思路都是【快慢双指针】或【三状态指针】:pre, cur, next.

分享几题lc hot 100的链表题目~

第一题:

首先直接的思路是:如何判断下一个指针指向的链表已被访问过?即访问到了已访问的值

方法一:【哈希表】,这里用的是unordered_set

class Solution {
public:bool hasCycle(ListNode *head) {if(head==NULL){return false;}// ListNode* cur=head;unordered_set<ListNode*>m;while(head!=NULL){if(m.count(head))return true;m.insert(head);head=head->next;}return false;}
};

这个方法有额外空间。

方法二:快慢指针

这个方法比较巧妙,空间复杂度为o(1),所以应该要在链表本身上想办法。这个思路在找链表中点中也有类似(快慢指针,快的到末尾时慢的到中间)。

题解中形容为“龟兔赛跑”:在同一个跑道上,如果有环的情况下,快的兔子一定会和慢的龟相遇。还可以类比“相对速度”(比较难想到hh)

 如果无环的话,fast->next为空就出界咯~

class Solution {
public:bool hasCycle(ListNode *head) {ListNode* fast=head;ListNode* slow=head;//注意,同时从起点出发while(fast&&fast->next){fast=fast->next->next;slow=slow->next;//先跑再比if(fast==slow)return true;}return false;}
};

有两个细节是:同时从起点出发+先后移指针再比较是否相遇。 

留几个我还没想明白的问题吧:为什么只能比较内存地址是否一致,不能比较节点的 val?(我试了会报错)
还有有两个细节是:同时从起点出发+先后移指针再比较是否相遇。,这里能否再解释下?如果快慢指针的初始值一个是head,一个是head->next为什么会出错呢?

http://www.dtcms.com/wzjs/461617.html

相关文章:

  • 网站建设找汉狮营销方案怎么写模板
  • 资讯类网站怎么做营销渠道模式有哪些
  • 网站怎么做图片动态图片不显示了seo前景
  • 汉口网站建设制作自己手机怎么免费做网站
  • 网站 开发 合同广东广州疫情最新情况
  • wordpress增加登录账户优化加速
  • 网站策划编辑是干嘛的北京软件培训机构前十名
  • 门户网站建设标准简述获得友情链接的途径
  • 湖北做网站网址导航下载到桌面
  • html中秋节网页制作代码长沙百度网站推广优化
  • 公司网站的定义谷歌搜索官网
  • 检测网站是否被做跳转seo怎么学在哪里学
  • 网站手机版怎么弄app开发需要多少钱
  • pc建站网站重庆二级站seo整站优化排名
  • 营销网站结构网店营销策划方案范文
  • Wordpress建站安装教程图解网址收录查询
  • 小公司做网站免费发布广告的网站
  • 农村建设自己的网站站长工具同大全站
  • 网站制作.com语言教育培训机构排名前十
  • 网站建设 网络推广 网站优化百度快速排名工具
  • 哪里长沙网站开发seo属于什么
  • 娱乐网站设计多少行业站外seo推广
  • 专业购物网站建设可以免费发广告的网站
  • 为什么做网站要用谷歌浏览器做百度推广怎么做才能有电话
  • 离石做网站的网络公司上海牛巨仁seo
  • 论坛源码推荐网站推广和优化的原因
  • 软件开发专业适合女生吗seo外包公司哪家好
  • b2c商城网站开发福州seo结算
  • wordpress进入站点超级外链工具
  • 做网站的软件电子人民日报客户端