- 博客(82)
- 收藏
- 关注
原创 Leetcode每日刷题之155.最小栈
1.题目解析本题是实现一个栈并且要实现其中的插入、删除、返回栈顶元素、返回最小元素的函数,这里主要的难点就是返回最小元素的函数,如果我们直接遍历,那么时间复杂度就是O(N),但是题目要求我们需要在常数时间也就是O(1)的时间复杂度内实现,那么接下来我们使用一种巧妙地方法来完成本题2.算法原理这里的主要难点只有在常数时间内找出栈顶最小元素,我们可以创建一个minst栈来存储数据,具体原理是在向st插入数据时判断此时插入的数据与minst中的栈顶元素哪个更小,如果minst的栈顶元素更小
2024-09-05 22:39:50 240
原创 Leetcode每日刷题之1658.将x减到0的最小操作数(C++)
【代码】Leetcode每日刷题之1658.将x减到0的最小操作数(C++)
2024-08-21 21:40:52 351
原创 Leetcode每日刷题之1004.最大连续1的个数|||(C++)
【代码】Leetcode每日刷题之1004.最大连续1的个数|||(C++)
2024-08-21 21:02:25 425
原创 Leetcode每日刷题之剑指offer 57.和为s的两个数字(C++)
【代码】Leetcode每日刷题之剑指offer 57.和为s的两个数字(C++)
2024-08-16 21:49:25 352
原创 Leetcode每日刷题之面试题01.02判断是否互为字符重排(C++)
【代码】Leetcode每日刷题之面试题01.02判断是否互为字符重排(C++)
2024-08-15 23:23:50 262
原创 深度学习 string 类之模拟实现一个 string 类(C++)
【代码】深度学习 string 类之模拟实现一个 string 类(C++)
2024-08-15 22:42:22 1013 2
原创 Leetcode每日刷题之 202. 快乐数(C++)
1. 题目解析根据题目我们知道,快乐数的定义是对一个数进行将其各位数的平方和相加后的操作,将此操作定义为 F ,如果在若干次 F 后最终返回值为 1 ,则称该数为快乐数,反之则不是快乐数2. 算法原理本题用到的算法原理是双指针,那么在对整数进行操作时双指针如何进行运用呢,这里需要引入一个概念就是,将一个数进行若干次 F 后,其一定会有重复的数字出现,即在不断的 F 后会形成一个由整数组成的环,那么这时的双指针就是环中的数字,其中快指针走两步就代表 F 进行两次,相应的慢指针走一步就代
2024-08-11 20:30:00 196
原创 Leetcode每日刷题之 1089. 复写零(C++)
1. 题目解析由题目可知,我们需要将给定数组中的所有零复写一遍,并且保证不能超出数组长度,还不可以开辟新的数组,要在原数组的位置直接操作2. 算法原理1. 由题目我们可以将问题简化为找出最终复写完成数组的最后一个元素,然后从该元素由后 向前在原数组依次复写遇到的零元素即可2. 所以我们首先的目标就是找出复写完成后的数组最后的一个元素是什么,那么我们可以使 用双指针的方法,即一个为快指针一个为慢指针, cur 从头开始作为慢指针向后遍历, de
2024-08-10 22:51:34 388
原创 Leetcode每日刷题之面试题01.01.判断字符是否唯一
在学习编程语言的过程中相信大部分同学刚开始接触的循环语句都是 for 循环,今天我将介绍一个比较简洁的循环语句,可以帮助我们减少些许的代码量,也更加快捷,那就是范围 for 在我之前的博文中也有所介绍 详情点击:面向对象程序设计(C++)之 String 类思路解析本题的核心思路很简单,就是遍历数组判断是否有重复字符,只需要使用两个循环语句即可,讲这道题的目的只是为了浅显的介绍一下范围 for 这个循环语句class Solution {public: bool isU
2024-08-09 22:26:09 380
原创 牛客刷题之OR86 返回小于 N 的质数个数(C++)
在学习的过程中基础尤为重要,刷题最能体现基础是否扎实,虽然本题十分简单,但是对于新手入门十分友好,接下来让我们一起解决这一道OR86返回小于 N 的质数个数思路解析本题是一道关于判断指定范围内质数个数的题目,核心要点就是对于质数概念的理解关于质数我们知道1. 2是最小的质数2. 质数只能被1 和其本身整除所以我们设计的思路就是,使用for循环遍历要判断的数字与2之间的范围内是否有其他整数可以被该数字整除,如果没有那么该数就是质数,最后求得指定范围内质数的个数即可
2024-08-08 21:45:55 289
原创 牛客网每日刷题之 HJ99.自守数(C++)
在不断学习的过程中也不能忘记了基础知识的巩固,在学习新的知识后要学会去举一反三,前不久我刚刚了解了一些关于 string 类的知识,对牛客网的 自守数 有了新的解题思路,让我们一起看看这道题吧思路解析a. 整数方法1. 首先我们知道自守数就是一个数的平方位数等于该数本身,所以我们的思路就是找出要求 得范围内所有数的平方并取出其位数,判断该数是否为自守数2.所以我们就可以写出函数分别用来求出整数的位数与取出该数平方的位数,然后循环遍历 判断是否符合条件,最后返回所给
2024-08-08 21:25:19 301
原创 C/C++内存管理
new的原理1. 调用operator new函数申请空间2. 在申请的空间上执行构造函数,完成对象的构造delete的原理1. 在空间上执行析构函数,完成对象中资源的清理工作2. 调用operator delete函数释放对象的空间new T[N]的原理1. 调用operator new[]函数,在operator new[]中实际调用operator new函数完成N个对 象空间 的申请2. 在申请的空间上执行N次构造函数delete[]的原理。
2024-07-26 23:03:14 1111 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人