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

苏州市政府网站建设评估岳阳网站设计

苏州市政府网站建设评估,岳阳网站设计,免费网页游戏手机版,做空调管路网站✅每日一练:876. 链表的中间结点 - 力扣(LeetCode) 解题思路: 定义快慢指针,让快指针走2步,慢指针走1步,当fast或者fast.next为空时,走完链表,此时slow就是中间位置 pub…

✅每日一练:876. 链表的中间结点 - 力扣(LeetCode)


 解题思路:

    定义快慢指针,让快指针走2步,慢指针走1步,当fast或者fast.next为空时,走完链表,此时slow就是中间位置
public ListNode middleNode(ListNode head) {//定义快慢指针,让快指针走2步,慢指针走1步,当fast或者fast.next为空时,走完链表,此时slow就是中间位置ListNode fast = head;ListNode slow = head;while(fast != null && fast.next != null){fast = fast.next.next;slow = slow.next;}return slow;}

✅每日一练:203. 移除链表元素 - 力扣(LeetCode)


 

 解题思路:

   题目意思让我们删除链表中相同的元素,看图

 

public ListNode removeElements(ListNode head, int val) {//判断头结点是否为空if (head == null) {return null;}//定义两个指针ListNode prev = head;ListNode cur = head.next;//循环条件while (cur != null) {if (cur.val == val) {prev.next = cur.next;cur = cur.next;} else {prev = cur;cur = cur.next;}}//如果第一个元素就是我们要删除的节点,直接让head = head.nextif (head.val == val) {head = head.next;}return head;}

✅每日一练:206. 反转链表 - 力扣(LeetCode)

 

解题思路:

   题目意思很简单 ,就是逆序一个单链表,思路就是先把头结点置空,然后将后面的节点挨个进行头插,反转链表,逻辑看似简单,实现起来还是有很多细节的,常看,不然就会忘,如图

这里面还有细节,就是头结点为空时,说明没有节点,如果head.next = null,说明就一个节点,直接返回头结点就可:

public ListNode reverseList(ListNode head) {if (head == null) {return null;}if (head.next == null) {return head;}ListNode cur = head.next;//将头结点置空,将后面的节点逐一进行头插head.next = null;while (cur != null) {ListNode curNext = cur.next;cur.next = head;head = cur;cur = curNext;}return head;}

✅每日一练:链表中倒数第k个结点_牛客题霸_牛客网 (nowcoder.com)


 

 解题思路:

   定义快慢指针,让快指针先走k-1步,走完以后让快慢指针同时走一步,当快fast.next为空时,说明走完了,此时slow就是我们要找的元素,非常巧妙,是谁想到的,真是太强了,我画个图吧

 

public ListNode FindKthToTail(ListNode head, int k) {if (k <= 0 || head == null) {return null;}//定义快慢指针,让快指针走2步,慢指针走k-1步,再让slow和fast同时走一步,让fast.next为空时,//表示走完了,此时的慢指针就是倒数第k个节点的数值ListNode fast = head;ListNode slow = head;//fast走k-1步while (k - 1 != 0) {fast = fast.next;//当k的值大于链表的长度时,用于判断下一个fast是否为空if (fast == null) {return null;}k--;}while (fast.next != null) {fast = fast.next;slow = slow.next;}return slow;}

✅每日一练:21. 合并两个有序链表 - 力扣(LeetCode)


 

 解题思路:

    这题有点像合并两个有序数组,定义一个临时的头结点,将两个链表的头结点的值进行比较,哪个小作为头结点,然后交叉比较两个链表,比较值的大小,小的房前面,形成有序,大致思路就是这样:

public ListNode mergeTwoLists(ListNode list1, ListNode list2) {ListNode newHead = new ListNode();ListNode tmp = newHead;while (list1 != null && list2 != null) {if (list1.val < list2.val) {tmp.next = list1;list1 = list1.next;tmp = tmp.next;} else {tmp.next = list2;list2 = list2.next;tmp = tmp.next;}}if (list1 != null) {tmp.next = list1;}if (list2 != null) {tmp.next = list2;}//返回新的头结点return newHead.next;}

http://www.khdw.cn/news/33731.html

相关文章:

  • 公司取名网免费版seo公司推荐推广平台
  • 专业广州网站建设北京效果好的网站推广
  • 响应式网站 cms短视频营销策略
  • 北京网站开发公司大全seo的优化策略有哪些
  • 东莞手机网站建设多少钱百度图片收录提交入口
  • 不用80端口做网站常见的网络营销模式
  • 多平台网站建设google浏览器官方下载
  • 八上电脑课做网站需要什么软件广告网站策划方案
  • 什么软件做高级网站网络营销的培训课程
  • 荆州哪个公司做网站360站长工具
  • 2017招远网站建设seo优化网站词
  • 做搜索网站seo外链推广
  • 武汉做网站的公司哪家好网络推广方案的内容
  • 网站外包建设找片子有什么好的关键词
  • 烟台网站制作搜狗营销
  • 旅游网站开发的意义nba季后赛最新排名
  • 建企业网站怎么做百度关键词排名怎么查
  • 网站建设协议书 保密条款东莞建设企业网站公司
  • 武汉第七建设集团有限公司网站百度云建站
  • 南沙移动网站建设黄页引流推广网站入口
  • 网络网站租全网推广代理
  • 全网营销型网站建设公司医疗网站优化公司
  • wordpress远程发布apiseo网络推广技术
  • 做网站公司职务百度seo详解
  • 注册新公司网上核名网站企业品牌网站营销
  • 南汇北京网站建设百度广告联系方式
  • 网站更新方案百度广告价格
  • 做网站页面免费b站推广网站下载
  • 图片上传不了网站宁波seo排名优化价格
  • 成都网站建设前十如何制作简易网站