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

9255tv直播nba5网站排名优化快速

9255tv直播nba5,网站排名优化快速,哈尔滨 做网站公司,加强网站编辑队伍建设Yan-英杰的主页 悟已往之不谏 知来者之可追 目录 ​编辑 ​编辑二、分享:OJ调试技巧 ​编辑三、链表的中间结点 ​编辑四、链表中倒数第k个结点 一、移除链表元素 示例 1: 输入:head [1,2,6,3,4,5,6], val 6 输出:[1,2,3,4,…

  Yan-英杰的主页

悟已往之不谏 知来者之可追


目录

​编辑

 ​编辑二、分享:OJ调试技巧

​编辑三、链表的中间结点

 ​编辑四、链表中倒数第k个结点


一、移除链表元素

示例 1:

输入:head = [1,2,6,3,4,5,6], val = 6
输出:[1,2,3,4,5]

 示例 2:

输入:head = [], val = 1
输出:[]

示例 3:

输入:head = [7,7,7,7], val = 7
输出:[]

提示:

  • 列表中的节点数目在范围 [0, 104]
  • 1 <= Node.val <= 50
  • 0 <= val <= 50

方法一:

        代码解析:

struct ListNode* removeElements(struct ListNode* head, int val){struct ListNode* prev = NULL;struct ListNode* cur = head;while(cur){if(cur->val != val){prev = cur;cur = cur->next;}else{if(prev == NULL){head = cur->next;free(cur);cur = head;}else{prev->next = cur->next;free(cur);cur = prev->next;}}}return head;
}

画图解析:

方法二:

        代码解析:

struct ListNode* removeElements(struct ListNode* head, int val){if(head == NULL){return NULL;}struct ListNode* newHead = NULL,*tail = NULL;struct ListNode* cur = head;while(cur){if(cur->val != val){   //尾插if(tail == NULL){newHead = tail = cur;}else{tail->next =cur;tail = tail->next;}cur = cur->next;}else{struct ListNode* next = cur->next;free(cur);cur = next;}}if(tail)tail->next = NULL;return newHead;
}

画图解析:

                

 二、分享:OJ调试技巧

        LeetCode在线调试功能需要付费,我们可以自己在编辑器进行调试,写个模板,每次用到复制过去直接调试即可


int main()
{struct ListNode* n1 = (struct ListNode*)malloc(sizeof(struct ListNode));struct ListNode* n2 = (struct ListNode*)malloc(sizeof(struct ListNode));struct ListNode* n3 = (struct ListNode*)malloc(sizeof(struct ListNode));struct ListNode* n4 = (struct ListNode*)malloc(sizeof(struct ListNode));struct ListNode* n5 = (struct ListNode*)malloc(sizeof(struct ListNode));n1->val = 7;n2->val = 7;n3->val = 7;n4->val = 7;n5->val = 7;n1->next = n2;n2->next = n3;n3->next = n4;n4->next = NULL;removeElements(n1,7);
}

三、链表的中间结点

        示例 1:

         

输入:head = [1,2,3,4,5]
输出:[3,4,5]
解释:链表只有一个中间结点,值为 3 。

示例 2:

输入:head = [1,2,3,4,5,6]
输出:[4,5,6]
解释:该链表有两个中间结点,值分别为 3 和 4 ,返回第二个结点。

提示:

  • 链表的结点数范围是 [1, 100]
  • 1 <= Node.val <= 100

代码解析:

        此题我们学会了快慢指针


struct ListNode* middleNode(struct ListNode* head){struct ListNode* slow,* fast;slow = fast = head;while(fast && fast->next)//节点为单数或者双数时出现的条件{slow = slow->next;fast = fast->next->next;}return slow;
}

画图解析:

        

 四、链表中倒数第k个结点

         输入一个链表,输出该链表中倒数第k个结点。

        实例:

输入:1,{1,2,3,4,5}
返回值:{5}

        代码解析:

                       此题依旧使用快慢指针

                        

struct ListNode* FindKthToTail(struct ListNode* pListHead, int k ) {if(pListHead == NULL){return NULL;}struct ListNode* slow,* fast;slow = fast = pListHead;//fastwhile(k--){if(fast == NULL){return NULL;}fast = fast->next;}while(fast){slow = slow->next;fast = fast->next;}return slow;
}

        画图解析:

                

http://www.hkea.cn/news/414609/

相关文章:

  • 河北建设银行石家庄分行招聘网站怎么申请自己的网络平台
  • vs2008 做网站搜索引擎的工作原理是什么
  • 东莞常平做网站公司app营销策划方案
  • 爱用建站 小程序重庆网站制作公司
  • 网站建设小企业案例漯河网络推广哪家好
  • wordpress 清空回收站合肥网站优化软件
  • 电站建设招聘网站智推教育seo课程
  • 做静态网站选用什么服务器站长素材网站
  • 网站建设先做前台还是后台百度认证是什么
  • 广州专业做crm系统的供应商seo网站培训班
  • 景安建网站企业网站seo方案案例
  • 山东滕州疫情最新消息今天i长沙官网seo
  • 公司做网站买域名之后做什么百度一下你就知道手机版
  • 北京婚恋网站哪家最好企业推广宣传方式
  • 国发网站建设西安做网站公司
  • 网站推广服务合同简述网络营销的主要方法
  • 信息门户网站是什么成人计算机培训机构哪个最好
  • 网站建设公司 中企动力公司东莞商城网站建设
  • b2c的电子商务网站自己想做个网站怎么做
  • 京东pc网站用什么做的如何注册网站怎么注册
  • 长沙商城网站制作seo线下培训课程
  • web网站开发公司网站制作优化排名
  • 这么做3d网站企业邮箱网页版
  • 瑞安网站建设公司关键词排名网络推广
  • 南京学做网站友情链接检查工具
  • 参考文献网站开发百度重庆营销中心
  • 如何做微信ppt模板下载网站企业网页设计公司
  • 做b2b网站百度点击快速排名
  • 网站怎么做移动图片不显示不出来吗芭嘞seo
  • 旅游网站建设服务器ip域名解析