【LeetCode】剑指 Offer(7)

news2024/11/25 20:26:52

目录

写在前面:

题目剑指 Offer 17. 打印从1到最大的n位数 - 力扣(Leetcode)

题目的接口:

解题思路:

代码:

过啦!!!

题目:剑指 Offer 18. 删除链表的节点 - 力扣(Leetcode)

题目的接口:

解题思路:

代码:

过啦!!!

写在最后:


写在前面:

生命不息,刷题不止。

题目剑指 Offer 17. 打印从1到最大的n位数 - 力扣(Leetcode)

题目的接口:

class Solution {
public:
    vector<int> printNumbers(int n) {

    }
};

解题思路:

思路很简单无脑:

根据n的值,

找出其对应的需要打印的数的最后一个数last。

然后直接暴力循环打印即可。

代码:

class Solution {
public:
    vector<int> printNumbers(int n) {
        vector<int> v;
        int last = 0;

        //找出最后一个需要打印的数
        while(n--)
        {
            last = last * 10 + 9;
        }

        //遍历即可
        for(int i = 1; i<=last;i++)
        {
            v.push_back(i);
        }
        return v;
    }
};

过啦!!!

题目:剑指 Offer 18. 删除链表的节点 - 力扣(Leetcode)

题目的接口:

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    ListNode* deleteNode(ListNode* head, int val) {

    }
};

解题思路:

这题也比较简单,

首先解决链表头删的特殊情况,

然后因为题目需要删除一个具体的节点,

所以不用考虑空链表的情况,

然后只需要遍历链表,然后删除就行。

代码:

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    ListNode* deleteNode(ListNode* head, int val) {
        //链表头删
        if(head->val == val)
        {
            head = head->next;
        }

        //设置两个指针
        ListNode* cur = head->next;
        ListNode* prev = head;

        //遍历链表删除节点
        while(cur)
        {
            if(cur->val == val)
            {
                prev->next = cur->next;
                break;
            }
            prev = cur;
            cur = cur->next;
        }

        //返回头结点
        return head;
    }
};

过啦!!!

写在最后:

以上就是本篇文章的内容了,感谢你的阅读。

如果喜欢本文的话,欢迎点赞和评论,写下你的见解。

如果想和我一起学习编程,不妨点个关注,我们一起学习,一同成长。

之后我还会输出更多高质量内容,欢迎收看。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/365246.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【项目精选】jsp企业快信系统(论文+视频+源码)

点击下载源码 计算机网络的出现到现在已经经历了翻天覆地的重大改变。因特网也从最早的供科学家交流心得的简单的文本浏览器发展成为了商务和信息的中心。到了今天&#xff0c;互联网已经成为了大量应用的首选平台&#xff0c;人们已经渐渐习惯了网络交易&#xff0c;渐渐对网络…

CVE-2022-48282 MongoDB .NET/C# 驱动存在反序列化漏洞

漏洞描述 MongoDB .NET/C# 驱动用于将 .NET 应用程序连接到 MongoDB 集群并建立通信&#xff0c;并使用 _t 字段鉴别属性名称。 MongoDB .NET/C# 驱动 2.19.0 之前版本存在反序列化漏洞&#xff0c;对于用 C# 编写的应用程序&#xff0c;攻击者满足以下条件时可利用此漏洞远程…

SFP光纤笼子 别称 作用 性能要点 工程要素

Hqst盈盛电子导读&#xff1a;2023年&#xff0c;Hqst盈盛电子于下属五金部开发生产SFP光纤连接器笼子等系列产品&#xff0c;所有产品生产及性标准都将参照连接器产品常用测试标准EIA-364-C等标准&#xff0c;以下为我司常规SFP光纤连接器基本性能要求SFP光纤笼子别称&#xf…

HTML基本语法-标签

注释 注释就是帮助我们理解的解释 本身不参加编译 HTML里面的注释 <!--这是被注释的内容-->我们也可以直接使用ctrl/&#xff08;快捷键&#xff09; 来实现光标行注释 标签基础认知 标签构成 有双标签-开始和结束 就之前 的加粗标签和标题标签 标签关系 父子关系…

【基础算法】关于高精度计算的问题【很高位数数据的加减乘除(相关代码用C++实现)】

文章目录前言1.高精度加法2.高精度减法3.高精度乘法4.高精度除法写在最后前言 当我们在利用计算机进行一些计算时&#xff0c;可能会遇到这类问题 &#xff1a; 有些计算要求精度高&#xff0c;希望计算的数的位数可达几十位甚至几百位&#xff0c;虽然计算机的计算精度也算较…

PostgreSQL的安装配置及使用

一.安装地址&#xff1a;https://www.postgresql.org/选择合适的版本下载二.配置mac 配置 pg_hba.conf 文件open .bash_profile export PATH$PATH:/Library/PostgreSQL/14/bincd /Library/PostgreSQL/14 sudo -u postgres bash cd data vim pg_hba.conf进入编辑模式&#xff1…

angular

1. angular获取不到DOM结点 angular中的ngOnInit钩子函数获取不到DOM节点&#xff1b; 这个钩子函数中&#xff0c;表示组件和指令初始化完成&#xff0c;并不是真正的DOM加载完成&#xff1b; 所以这时候需要利用另外一个钩子函数ngAfterViewInit()&#xff0c;是在视图加载完…

传统单体架构存在哪些问题?

传统单体应用架构模型通常我们所使用的传统单体应用架构都是模块化的设计逻辑&#xff0c;程序在编写完成后会被打包并部署为一个具体的应用&#xff0c;而应用的格式则依赖于相应的应用语言和框架。例如&#xff0c;在网上商城系统中&#xff0c;Java Web工程通常会被打成WAR包…

SpringBoot的自动装配原理、自定义Starter与SPI机制

一、前言Spring简直是java企业级应用开发人员的春天&#xff0c;我们可以通过Spring提供的ioc容器&#xff0c;避免硬编码带来的程序过度耦合。但是&#xff0c;启动一个Spring应用程序也绝非易事&#xff0c;他需要大量且繁琐的xml配置&#xff0c;开发人员压根不能全身心的投…

学习国家颁布的三部信息安全领域法律,理解当前工作中的信息安全合规要求

目录三部信息安全领域的法律文件三部法律的角色定位与联系三部法律的适用范围三部法律的主要履职部门三部法律条文章节结构中的共性三部法律中的一些次重点章节网络安全法的重点章节数据安全法的重点章节个人信息保护法的重点章节关于工业和信息化部行政执法项目清单三部信息安…

ubuntu本地访问nas

需求 本地磁盘空间太小&#xff0c;本地网络里有个nas&#xff0c;希望将nas作为数据盘挂载到本地使用。 方法1 基于sftp访问nas 首先nas设置时要打开sftp访问功能。 然后用ubuntu桌面访问服务器的功能登录sftp&#xff0c;类似如下指令 sftp://user192.168.0.100 ubuntu下…

已上传的微信小程序源码丢失,通过反编译找回

前提&#xff1a;你的程序源码已经上传&#xff0c;可以打开体验版或开发版小程序。工具&#xff1a;小程序包解密&#xff1a;链接: https://pan.baidu.com/s/1A2ZCqflr4jMLfg03U_LWHQ 提取码: 4ntn wxappUnpacker&#xff1a;链接: https://pan.baidu.com/s/1HQS8xQsqrhc4hzi…

图纸等敏感文件数据外发时 如何确保效率和安全性?

很多企业随着业务的发展&#xff0c;需要频繁的与外部供应商、合作伙伴之间进行数据的交换和使用。尤其是制造型企业&#xff0c;可能每天都要与几十、上百家供应商及合作伙伴进行产品数据交换。目前&#xff0c;大多数企业已经在内部实施了PDM/PLM系统&#xff0c;实现了对组织…

coco数据集训练nanodet详细流程

github地址 首先要配置环境 conda create -n nanodet python3.8 -y conda activate nanodet确认一下cuda版本 nvcc -V确认是11.3之后&#xff0c;要安装11.3对应的pytorch版本。 本机装pytorch1.12.1后面运行的时候会报错&#xff08;torch没有经过cuda编译&#xff09;&…

C语言中到底是非0表示真,还是1表示真?

我是荔园微风&#xff0c;作为一名在IT界整整25年的老兵&#xff0c;今天我们来重点说一说C语言中到底是非0表示真&#xff0c;还是1表示真&#xff1f;这就是说到C语言中的两个常见运算形式&#xff0c;即关系运算符和逻辑运算符。为照顾急性子的同学&#xff0c;先直接说结论…

【概念辨析】数组指针指针数组

目录 一、数组指针 二、指针数组 三、 数组指针的数组名不是二级指针 再来说最关键的&#xff1a;数组指针为什么不是二级指针呢&#xff1f; 代码如下&#xff1a; 四、指针数组的数组名是二级指针 在复习&#xff0c;在考试&#xff0c;在焦虑。 又一次学习到了数组指针和指针…

MybatisPlus的注意点

userService是基础于ServiceImpl 而servicfeImpl中要传入一个继承于BaseMapper的类和一个实体类 这个继承于BaseMapper的类就是我们的userMapper&#xff0c;所以userMapper要集成BaseMapper 重点来了&#xff0c; UserService中的我们去调用Impl实现类的saveOrUpdate方法&am…

神经网络中超参数调节和优化技巧、优化算法的分类介绍

目录什么是卷积神经网络超参数的调整学习率迭代次数批次大小激活函数隐含层的数目和单元数权重初始化Dropout方法网格搜索和随机搜索神经网络优化算法介绍优化算法分类一阶优化梯度下降算法二阶优化梯度下降算法随机梯度下降(SDG)小批量梯度下降进一步优化梯度下降算法动量方法…

Could not connect to Redis at 127.0.0.1:6379: 由于目标计算机积极拒绝,无法连接。(极简解决办法)

一、遇到问题。 在需要启动Redis客户端的时候&#xff0c;会发现会报这个错误。报这个错误的原因就是Redis的服务端没有开启&#xff0c;那Redis的客户端是访问不了的 二、解决办法。 1.解决的办法就是要启动服务端&#xff0c;让这个客户端可以访问到。启动服务端最简单不会…

秒懂算法 | 基于朴素贝叶斯算法的垃圾信息的识别

本文将带领大家亲手实现一个垃圾信息过滤的算法。 在正式讲解算法之前,最重要的是对整个任务有一个全面的认识,包括算法的输入和输出、可能会用到的技术,以及技术大致的流程。 本任务的目标是去识别一条短信是否为垃圾信息,即输入为一条文本信息,输出为二分类的分类结果。…