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

武强营销型网站建设费用互联网推广员

武强营销型网站建设费用,互联网推广员,苏州做网站哪家比较好,dedecms收费怎么办文章目录前言一、 移除链表元素1.题目介绍2.思路3.代码二、反转链表1.题目介绍2.思路3.代码三、链表的中间结点1.题目介绍2.思路3.代码四、链表的中间结点1.题目介绍2.思路3.代码前言 以下是链表经常考的面试题#xff0c;我在这里进行归纳和讲解#xff0c;采取的是循序渐进… 文章目录前言一、 移除链表元素1.题目介绍2.思路3.代码二、反转链表1.题目介绍2.思路3.代码三、链表的中间结点1.题目介绍2.思路3.代码四、链表的中间结点1.题目介绍2.思路3.代码前言 以下是链表经常考的面试题我在这里进行归纳和讲解采取的是循序渐进的方式y一一讲解 当然需要有链表基础没有的话先看我前面的链表讲解 一、 移除链表元素 1.题目介绍 题目在力扣得的203. 移除链表元素 2.思路 本题有两种思路 1.使用带有哨兵位的头结点 2.将头结点为空时和头删时两种情况分开写 3.代码 1.带哨兵位的头节点 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/struct ListNode* removeElements(struct ListNode* head, int val){struct ListNode*dummyHead(struct ListNode*)malloc(sizeof(struct ListNode));dummyHead-nexthead;struct ListNode*prev dummyHead;struct ListNode*curhead;while(cur){struct ListNode*tempcur;if(cur-valval){struct ListNode*nextcur-next;prev-nextnext;}else{prevcur; }curcur-next; }return dummyHead-next; }2.不带哨兵位头节点的 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/struct ListNode* removeElements(struct ListNode* head, int val){struct ListNode* prevhead;if(prevNULL){return head;}struct ListNode*curprev-next;while(cur){if(prev-valvalprev-next!NULL)//需要头删的情况且之后有元素时{prevprev-next;headprev;curprev-next;}else if(cur-valval){prev-nextcur-next;curcur-next;}else if(cur-val!val){prevcur;curcur-next;}}if(prev-valvalprev-nextNULL)//只有头节点的而且需要头删的{headNULL;return head;}return head;}二、反转链表 1.题目介绍 题目在206. 反转链表 2.思路 此题用三个指针prev保存前面得节点的地址cur保存当前的地址同时cur也是需要改变next的节点next保存cur下一个节点的地址 最后返回prev即可 3.代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/struct ListNode* reverseList(struct ListNode* head){struct ListNode*prev,*cur,*next;prevNULL;curhead;while(cur){nextcur-next;cur-nextprev;prevcur;curnext;}return prev; }三、链表的中间结点 1.题目介绍 题目在力扣的876. 链表的中间结点 2.思路 如果你做过数组的双指针题那么这题你就会很快的做出来如果你不能很快的理解我的做法你可以到前面的数组的刷题里面去看双指针法你就会炉火纯青了好了就算你不了解双指针法也很快的理解我的做法 我们可以用一慢指针和快指针快指针的速度是慢指针的2倍即慢指针每走一步快指针就走两步我们假设这个链表的长度为n而快指针走完这个链表时慢指针刚好就指向链表的中间的位置 3.代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/struct ListNode* middleNode(struct ListNode* head){struct ListNode*slowhead;struct ListNode*fasthead;while(fastfast-next){slowslow-next;fastfast-next-next; }return slow;}四、链表的中间结点 1.题目介绍 题目在牛客链表中倒数第k个结点 2.思路 如果你做过我前面的一个题目那么这题就非常好理解了 我们可以搞两个指针一个slow一个fast让fast先走k步然后当fast走完时slow就是倒数第k个节点 3.代码 /*** struct ListNode {* int val;* struct ListNode *next;* };*//*** * param pListHead ListNode类 * param k int整型 * return ListNode类*/ struct ListNode* FindKthToTail(struct ListNode* pListHead, int k ) {// write code herestruct ListNode* fastpListHead;struct ListNode* slowpListHead;while(k--){if(fastNULL){return NULL;}fastfast-next;}while(fast){fastfast-next;slowslow-next;}return slow; }
http://www.w-s-a.com/news/748765/

相关文章:

  • 过年做那些网站能致富怎样免费建立自己网站
  • 网站去哪里备案长沙网络推广
  • 企业网站规划书vue适合什么样的网站开发
  • 个人网站备案名字网站设计的提案
  • 网站自己做还是找人做常州钟楼区邹区建设局网站
  • 网站文件上传wordpress修改asp做微网站
  • 妇女之家网站建设方案英语不行如何编程做网站
  • 深圳企业网站建设推广服务网站托管一年多少钱
  • wordpress 百度地图api网络seo天津
  • 网站营销咨询顾问餐饮加盟网站建设方案
  • 网站后台管理系统的重要技术指标wordpress下单邮件通知的实现
  • 通化县住房和城乡建设局网站定制网站收费
  • 湖北做网站教程哪家好成都网站建设询q479185700上快
  • 网站的seo方案鹰潭做网站的公司
  • 高级室内设计网站太原网站设计费用
  • 智信建设职业培训学校网站深圳做网站建设开发
  • 宣城市住房和城乡建设局网站网站界面设计专利
  • 免费个人网站建站申请如何做内网网站
  • 福州专业网站建设怎么做黄骅港怎么读
  • 望京 网站建设深圳发型网站建设
  • 电商网站的相同点医疗网站建设代理商
  • 网址导航网站有哪些易营宝智能建站
  • 私人定制哪个网站做的比较好免费网站使用
  • 嘉兴网站建设系统免费的seo优化
  • 购书网站开发的意义网站建设接单渠道
  • 网站站内搜索怎么做wordpress默认主题修改
  • 网站推广的表现方式交网站建设 域名计入什么科目
  • 龙岗南联网站建设公司江门市
  • 网站运行方案设计平台模式
  • 网站加入wordpress邳州城乡建设局网站