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

外贸网站翻译建设自己创建一个网页

外贸网站翻译建设,自己创建一个网页,国内最大的猎头公司,seo搜索引擎优化主要做什么链表的题目感觉很多的思路都是【快慢双指针】或【三状态指针】: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/535719.html

相关文章:

  • 企业服务网站建设需要多少钱建设一个菠菜网站成本
  • 上海建设工程交易中心网站网站建设构成
  • 长春网站建设方案外包个人网站链接怎么做
  • 360免费建站视频网页升级紧急通知通知
  • 织梦dede网站后台被挂黑链怎么办wordpress 统计小工具
  • 网站建设有什么好建议如何推广网址
  • ps个人网站的首页界面石家庄市住房和城乡建设局官方网站
  • 响应式瀑布流网站程序现在都用什么软件做网站
  • 长沙营销型网站郑州工装定制厂家哪家好
  • 做网站php软件菏泽市城乡和建设局网站
  • 广州市官网网站建设报价做一个手机app大概需要多少钱
  • 网站读取速度慢海淀区手机网站设计服务6
  • 手机开发者网站职场社交网站怎么做
  • 网站开发技术的比较代码判断网站
  • 北京网站设计公司飞沐有网站加金币的做弊器吗
  • 男女做受网站东营会计信息网官网首页
  • 网站这么上百度网站建设一年多少钱
  • 国内美食网站欣赏济南建设网站 概况
  • wordpress批量网站关键词优化排名要怎么做
  • 太原市手机微网站建设建筑木模板报价清单
  • 如何备份一个网站广告传媒公司营业执照经营范围
  • 安徽网站建设流程my域名
  • 教育网站建设规划书国内重大新闻十条
  • 哪些网站适合用自适应职高的电子商务主要学什么
  • 宁波网络建站公司有哪些wordpress 插件选项
  • o2o网站系统建设广东江门最新消息今天
  • 承装承修承试材料在哪个网站做自己做的网站源码如何安装
  • 网站价值评估 php开发公司总经理竞聘报告
  • 建设厅网站账号密码忘记怎么办html代码怎么下载
  • 支付网站开发建设费用怎么入账电信宽带做网站