首页 > 其他分享 >剑指offer——Day11 2022.11.17 双指针(简单)

剑指offer——Day11 2022.11.17 双指针(简单)

时间:2022-11-22 00:00:16浏览次数:55  
标签:head ListNode 17 offer back next Day11 front NULL

Day11 2022.11.17 双指针(简单)

18.删除链表的节点

自己实现

直接遍历就行了

代码如下:

class Solution {
public:
    ListNode* deleteNode(ListNode* head, int val) {
        if(head==NULL)return NULL;
        ListNode* now=head;
        if(head->val==val)return head->next;
        while(now->next!=NULL)
        {
            if(now->next->val==val)
            {
                now->next=now->next->next;
                break;
            }
            now=now->next;
        }
        return head;
    }
};

代码表现

22.链表中倒数第k个节点

自己实现

根据需要的k,创建两个节点指针front, backback=front(->next)*(k-1)。当back->next==NULL时,返回front即可

代码如下:

class Solution {
public:
    ListNode* getKthFromEnd(ListNode* head, int k) {
        if(head==NULL)return NULL;
        ListNode* front=head;
        ListNode* back=head;
        for(int i=0;i<k-1;i++)back=back->next;
        while(back->next!=NULL)
        {
            front=front->next;
            back=back->next;
        }
        return front;
    }
};

代码表现

hint:

  • 积累这种双指针的方法

标签:head,ListNode,17,offer,back,next,Day11,front,NULL
From: https://www.cnblogs.com/cspzyy/p/16913852.html

相关文章

  • CF1747E List Generation
    考虑将问题抽象成:左上角为\((0,0)\)右下角为\((n,m)\)的网格图,求所有满足至少有一条只向下或向右走的路径经过点集内所有点的的不同的点集大小之和。那么显然拐点有......
  • 17.多线程并发在电商系统下的追本溯源(4)
           ......
  • CF1733E
    CF1733E给定一个初始箭头全部指向右的网格图,每时刻在\((0,0)\)新增一个黏球,之后黏球按照箭头指示运动一格,并将其刚才所在的上一个格子的箭头变换方向。箭头只会指向右......
  • HDU-1712
    HDU-1712思路\(dp[i][j]\)表示从前\(i\)个科目中选,总共花\(j\)天所能得到的最大学分。首先遍历科目\(i:1\rightarrown\),再遍历所有天数\(j:1\rightarrowm\),再遍......
  • 20221117 树模型
    概述TreeNode接口,JsonNode抽象类实现TreeNode主要关注TreeNode接口的方法ObjectMapper相关方法readTreewriteTree简单使用Stringuser=objectMapper.......
  • 老男孩教育 | 已婚已育,30岁转行做网安,三个月收获满意Offer!
    不够优秀,努力来凑~~~不要为懒散和懈怠找任何理由,每天给自己一个希望,路是靠自己走出来的,成功是靠自己努力得到的!!!俗话说:二十而冠,三十而立!30岁是人生分水岭,步......
  • 【JavaScript 教程】第六章 数组17—flatMap() :对每个元素执行映射函数并将结果展平
    英文 | https://www.javascripttutorial.net/译文|杨小爱在上节,我们学习如何使用 JavaScriptArrayflat()方法来展平数组,错过的小伙伴可以点击文章《​​【JavaScrip......
  • 难题(1761E)
    题目链接题目大一:保证是一个完整图,输出最小操作数。 AC代码:、#include<bits/stdc++.h>#definemod1000000007usingnamespacestd;inte[4010][4010],fa[4010......
  • 篇(17)-Asp.Net Core入门实战-文章管理之文章类别管理(Linq子查询)
    篇(17)-Asp.NetCore入门实战-文章管理之文章类别的管理如果要做一个CMS系统,那么文章管理算是入门,文章管理附带一个类别管理,用来对文章进行类别区分。所以,本章简单讲一些......
  • 17.5 稀疏调拨的内存映射文件--《Windows核心编程》
    原文链接:https://www.likecs.com/show-306421749.html,原文中代码是C++MFC程序,更详细。本文是C语言测试代码。(1)稀疏文件(SparseFile)定义指的是文件中出现大量的0数据,这......