【LeetCode】剑指 Offer(7)

news/2024/11/24 7:57:38/

目录

写在前面:

题目剑指 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.ppmy.cn/news/27324.html

相关文章

java+Selenium+TestNg搭建自动化测试架构(3)实现POM(page+Object+modal)

1.Page Object是Selenium自动化测试项目开发实践的最佳设计模式之一&#xff0c;通过对界面元素的封装减少冗余代码&#xff0c;同时在后期维护中&#xff0c;若元素定位发生变化&#xff0c;只需要调整页面元素封装的代码&#xff0c;提高测试用例的可维护性。 PageObject设计…

【c语言】预处理

&#x1f680;write in front&#x1f680; &#x1f4dc;所属专栏&#xff1a;> c语言学习 &#x1f6f0;️博客主页&#xff1a;睿睿的博客主页 &#x1f6f0;️代码仓库&#xff1a;&#x1f389;VS2022_C语言仓库 &#x1f3a1;您的点赞、关注、收藏、评论&#xff0c;是…

CSS(配合html的网页编程)

续上一篇博客,CSS是前端三大将中其中的一位,主要负责前端的皮,也就是负责html的装饰.一、基本语法规则也就是:选择器若干属性声明(选中一个元素然然后进行属性声明)CSS代码是放在style标签中,它可以放在head中也可以放在body中 ,可以放到代码的任意位置.color也就是设置想要输入…

01-多线程配置

如何配置springboot线程池01-springboot内部有几类线程02-springboot线程池配置标准一个问题&#xff1a;答案&#xff1a;03-springboot Tomcat线程池配置&#xff1a;Controller请求会发生什么事情&#xff1a;yml配置&#xff1a;自定义线程池配置使用自定义线程&#xff1a…

【Python入门第十五天】Python字典

字典&#xff08;Dictionary&#xff09; 字典是一个无序、可变和有索引的集合。在 Python 中&#xff0c;字典用花括号编写&#xff0c;拥有键和值。 实例 创建并打印字典&#xff1a; thisdict {"brand": "Porsche","model": "911&q…

1个寒假能学会多少网络安全技能?

现在可以看到很多标题都声称三个月内就可以转行网络安全领域&#xff0c;并且成为月入15K的网络工程师。那么&#xff0c;这个寒假的时间能学多少网络安全知识&#xff1f;是否能入门网络安全工程师呢&#xff1f; 答案是肯定的。 虽然网络完全知识是一门广泛的学科&#xff…

Mysql插入数据从指定选项中随机选择、插入时间从指定范围随机生成、Navicat使用存储过程模拟插入测试数据

场景 Navicat通过存储过程批量插入mysql数据&#xff1a; Navicat通过存储过程批量插入mysql数据_霸道流氓气质的博客-CSDN博客 上面使用过Navicat借助存储过程批量插入数据。但是插入数据是固定的 insert语句&#xff0c;如果在本地开发时需要模拟插入一些随机数据(从指定…

pip命令大全 含换源方法

目录 一、命令列表 二、通用选项列表 三、常用操作 1.使用 requirements.txt 安装包 2.生成requirements.txt文件 3.pip升级命令 4.开启向后不兼容的新功能 5.启用已弃用的功能 四、pip换源 1.临时使用pip源方法 2.永久修改方法 一、命令列表 命令说明实例install安…