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

淘宝联盟网站模板中国互联网大厂排名

淘宝联盟网站模板,中国互联网大厂排名,广告推广广告,网站推广软件正如标题所说#xff0c;本文会图文详细解析三道单链表OJ题#xff0c;分别为#xff1a; 反转链表 #xff08;简单#xff09; 链表的中间节点 #xff08;简单#xff09; 链表的回文结构 #xff08;较难#xff09; 把他们放在一起讲的原因是#xff1a; 反转链…正如标题所说本文会图文详细解析三道单链表OJ题分别为 反转链表 简单 链表的中间节点 简单 链表的回文结构 较难 把他们放在一起讲的原因是 反转链表 和 链表的中间节点 是 链表的回文结构 的基础 为什么这样说请往下看 目录 1. 反转链表 做题思路 画图理解 代码实现 2. 链表的中间节点 做题思路 画图理解 代码实现 3. 链表的回文结构 做题思路 画图理解 代码实现 1. 反转链表 LeetCode链接206. 反转链表 - 力扣LeetCode 做题思路 遍历链表改变每个节点的链接方向使其链向前节点如果是第一个节点使其链向 NULL  这里需要3个指针 cur 指向当前需要修改的节点 prev 记录 cur 的前一个节点 cur 要链向此节点 next 记录 cur 的后一个节点避免 cur 改变链接方向后找不到下个节点 画图理解 ✍️代码实现 struct ListNode* reverseList(struct ListNode* head) {struct ListNode* cur head;struct ListNode* prev NULL;while (cur ! NULL){struct ListNode* next cur-next;cur-next prev;prev cur;cur next;}return prev; } 最后提交代码试试 完美通过本题并不难来搞下一题 2. 链表的中间节点 LeetCode链接876. 链表的中间结点 - 力扣LeetCode 做题思路 快慢指针搞两个指针一个叫 fast 一个叫 slow 快指针 fast 一次走两步慢指针 slow 一次走一步当 fast 走到 NULL 时 slow 恰好在中间此时 slow 指向的节点就是中间节点 画图理解 ✍️代码实现 struct ListNode* middleNode(struct ListNode* head) {struct ListNode* slow head;struct ListNode* fast head;while (fast ! NULL fast-next ! NULL){slow slow-next;fast fast-next-next;}return slow; } 提交代码 这道题也很简单主要就是快慢指针的思路第一次接触的话可能想不到这种方法 接下来就是本文重点了前面这些只是开胃小菜 3. 链表的回文结构 牛客链接链表的回文结构_牛客题霸_牛客网 (nowcoder.com) 做题思路 1. 找到中间节点 2. 反转中间节点及其之后的链表 3. 此时把链表分为两段 未反转的链表为一段用指针 list1 指向这段链表的头节点反转过的链表为另一段用指针 list2 指向这段链表的头节点 4. 比较 list1 和 list2 节点的值是否相等 如果相等 list1 和 list2 同时往后走去比较下一组数据如果不相等说明链表不是回文结构返回 false  5. 当 list2 走到 NULL 处时说明此链表是回文结构返回 true  画图理解 可以看到本题需要调用之前写过的代码 这就是为什么我说前两道题是本题的基础 ✍️代码实现 //找链表的中间节点 struct ListNode* middleNode(struct ListNode* head) {struct ListNode* slow head;struct ListNode* fast head;while (fast ! NULL fast-next ! NULL){slow slow-next;fast fast-next-next;}return slow; }//反转链表 struct ListNode* reverseList(struct ListNode* head) {struct ListNode* cur head;struct ListNode* prev NULL;while (cur ! NULL){struct ListNode* next cur-next;cur-next prev;prev cur;cur next;}return prev; }//牛客这道题不支持用C语言答题 //虽然我们还没有学C但是C是兼容C的 //直接用C的方式写代码即可 class PalindromeList { public:bool chkPalindrome(ListNode* head){struct ListNode* list1 head;struct ListNode* mid middleNode(head);struct ListNode* list2 reverseList(mid);while (list2 ! NULL){if (list1-val ! list2-val){return false;}list1 list1-next;list2 list2-next;}return true;} }; 提交代码 成功通过 怎么样大家看到这里把这三道题弄懂了吗如果有问题可以在评论区留言哦 :D 本文完
http://www.yutouwan.com/news/495574/

相关文章:

  • 邯郸网站建设设计wordpress cg主题
  • 昌江县住房和城乡建设网站企业融资计划
  • 外贸网站制作推广成都网站制作公司定制
  • 青岛 公司 网站建设坪山网站建设设计
  • 专业网站设计公司价格wordpress如何不显示评论
  • 怎么在360做网站信息流推广渠道
  • 网站建设的风险识别廊坊哪里有做网站的
  • 南江县规划和建设局网站平面设计 网站推荐
  • wordpress注册码插件网站seo诊断报告
  • 平阳住房和城乡建设厅网站湖州南浔建设局网站
  • 飞卢盗版做的最好的网站专门给小公司做网站
  • 动易网站地图wordpress自动压缩图片大小
  • 谷歌外贸网站国家知识产权专利网官网
  • 北京城乡住房建设厅网站wordpress替换表情变小
  • 南京市建设监理协会网站wordpress博客漏洞
  • 外网网站管理制度建设全自动网站制作系统
  • 宣城市建设监督管理局网站首页甘肃省兰州市新闻
  • 风向 网站网站开发和网络工程师
  • 网站栏目管理系统明星设计网站风格说明
  • 网站查询 工信部wordpress 多栏目
  • 开家网站设计公司免费咨询刑事辩护在线律师
  • 韩国网站设计风格万网域名安装wordpress
  • 中国十大大型门户网站天元建设集团有限公司王士坤
  • 山东舜玉建设工程有限公司网站济南网签查询系统
  • 网站建设教程网站做百度移动网站
  • lamp环境做网站企业为什么选择网站建设
  • 深圳做微商网站制作angle wordpress
  • 破解网站后台密码有人做吗著名的wordpress网站
  • 网站app在线制作网站技术支持是什么
  • 英文网站推荐太原企业网站seo