自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(174)
  • 收藏
  • 关注

原创 背包问题总复习(纯理论)

背包问题理论总结

2022-08-07 15:11:33 302 1

原创 STL相关面试问题

STL相关面试问题

2022-08-07 12:42:11 1084

原创 复习一下dp动规

动规问题复习!回归基础

2022-07-31 16:17:18 378

原创 HJ82将真分数分解为埃及分数

重复问题,利用递归去解,每次运算的真分数在发生变化。

2022-07-21 18:05:18 191

原创 HJ77火车进站

重复的子问题每一次车进站可以选择出还是不出!深搜问题,直接把两种情况写出来,只要满足相应的条件即可。注意除了维护数组,还需要维护一个栈结构!此题输出具体方案,显然动规不符合。解决重复子问题动规or深搜。...

2022-07-21 16:12:09 501 1

原创 虚函数表、函数地址、虚函数指针问题!

虚函数、虚指针、虚函数表,看这个简单易懂,如有补充,欢迎评论

2022-07-20 16:50:43 641 1

原创 指针传递与浅拷贝

指针传递与浅拷贝

2022-07-19 10:10:36 319

原创 HJ75公共子串的计算,动规递推公式怎么确定?

思路很明显,就是利用二维dp来写,而且dp含义也很明确:当 s1[i-1]=s2[j-1]时,dp[i][j]=dp[i-1][j-1]+1; 当 s1[i-1]!=s2[j-1]时,dp[i][j]=0; 【注意:公共子串要保证对角线的关系,不能写成下面这样:】 代码:...

2022-07-13 22:54:23 312 1

原创 有名管道实现进程间通信

在Linux中实现进程间通信:实现描述:进程A:进程B:代码:进程A 代码:进程B———————————————————————————————————————————上述进程通信存在的问题:只有当进程A发送多行数据时,B中只读取第一行数据,在终端只显示第一行,只有A进程再次收到进程B的数据后,A中的第二行才会从缓冲区内显示在进程B的终端中。造成此结果的原因是,进程A、B读写在同一个进程中进行,read() 没有读到另一个进程的数据 会发送阻塞等待。避免:创建一个子进程,用父进程实现写的

2022-07-12 16:14:19 368

原创 字符串通配符

循环子问题,可以用动规或者递归,递归写起来好理解一点:

2022-07-11 15:32:20 218

原创 zj-future03. 快递中转站选址

不难,知道曼哈顿距离的计算公式就可,思路比较直的做法就是,遍历每一个单元格,对快递分发点进行距离计算,每一次都需要进行比较距离长短作取舍。因为,每个地方都能设置为中转站,所以也没有什么边界条件限制。代码:...

2022-07-11 11:59:24 283

原创 拷贝构造函数的调用方式以及相关问题【最清晰易懂】

关于构造函数,人多最乱,如果大家依旧迷糊,可以看看这篇,应该比较容易明白

2022-07-10 23:40:50 1290 1

原创 zj-future02. 黑白棋游戏

其实,这道题不难,理解题意也不用很长时间。本来的思路是想通过构造一个反向数组用来判断插入的最小次数,结果部分答案 算出来的始终比 正确结果 多了 1。才发现,那个思路有个很大的bug;再后来改用双循环找0判断法,答案对是对了,但是一个超级长的用例 超时了;再后来,尝试各种剪枝,降低时间复杂度,但是就是无论怎么降,双循环就是没办法; 好吧,虽然不难,确实花了我很长时间去改 ,o(╥﹏╥)o代码:当时没做出来,我是真的菜啊啊啊啊啊。...

2022-07-08 17:03:03 267 1

原创 2326. 螺旋矩阵 IV

螺旋矩阵的题目已经做过至少4次了,这一次终于靠自己写出来了!!!!终于看到了刷题的效果,想哭!首先,代码:ps:不理解的看注释,一定要注意,坐标是时刻变化的,边界不能设为固定值!!!这个害我调整老半天,气死个人~...

2022-07-07 17:02:37 151

原创 异或解决不需要额外空间的问题

异或用法特点!!!!

2022-07-06 17:57:48 84

原创 构造字典树解决异或问题

二进制 与 树的结合,是最头疼的问题了,非常不想看,但是,解决这类问题,dfs它不给力啊!!无奈,逼着自己学了。思路:一、dfs 两两异或 找到最大值不就ok吗?结果超时— —!这么多的数是要闹哪样! 二、构建字典树尽可能能多的保留高位1-------这样的结果才能保证最大。前缀树【字典树】的构造是:左节点存储0,右节点存储1.取数与当前字典树比较时,每一个节点尽可能的不相同。代码部分:总体代码:...

2022-07-06 17:36:43 189

原创 类的构造函数执行顺序

背面经的时候,发现了历史遗留问题,一直没深入理解,今天的摸索中有所进展~a) 赋值初始化:在函数体内进行初始化;b)列表初始化:在冒号后使用初始化列表进行初始化。两者的区别:赋值初始化:在函数体中进行初始化,在数据成员被分配内存后进行;列表初始化:在进入函数体前,在数据成员分配内存空间时就进行初始化;写法如下:父类:Parent 子类:Child1父类:有参构造函数 子类:有参构造【初始化列表方式】父类:无对象 子类:父类对象 p代码:

2022-07-06 11:19:31 415

原创 2321. 拼接数组的最大分数

拿到手,没什么特别明确的思路,但是看着别人的讨论,才知道,这是一道求最大连续子序列和的问题!!!!思路:代码:

2022-07-05 20:38:54 99

原创 2320. 统计放置房子的方式数

第一想法用动规,但是不知道如何下手。浅看了一下答案,发现是做过的题。代码: 注意:dp[n]可能取余后依然超过int 的范围,甚至long int的范围(32位的话),用long long int 来接收。

2022-07-05 16:10:08 133

原创 2319. 判断矩阵是否是一个 X 矩阵

仔细想一下不是一道难题,但是不知道有没有人跟我一样一开始第一想法就是用深搜去写。显然如果用深搜就跌倒大坑里面去了,答案应该是可以做出来,但是太复杂了。这道题不需要思考那么深,仔细想一下,无非就是两种情况,一种对角线元素不是0;一种剩下的全是0;那把对角线元素和非对角线元素分开考虑不就好了吗?思路:如何分开对角线元素与非对角线元素呢?可以选择一行一行遍历,找到对角线元素的坐标关系,则一行中剩下的元素就是非对角线元素了,然后分别判断他们是否满足 0与非0的情况即可。不满足就直接break;所以重点在于关系:当

2022-07-04 19:55:01 203

原创 炒一下冷饭---回文子串问题

今天炒个冷饭,看一下回文子串的问题,奇怪的是leetcode这个题我竟然没有写过 0 . 0题目短的可怜,证明它真的简单的很多人不屑去做。。思路:一、中心扩展法,直接上代码,没有什么好解释的 所以,重复子问题,就是去判断 子串是否是回文串。动规五部曲:1.dp[i][j]含义:表示 s 下标 从 i 到 j 是否为回文串;2.初始化:每一个字符都是一个回文子串3.递推公式:考虑边界条件:如果字...

2022-07-04 16:47:43 148

原创 面试基础题【2】--排序算法

----接上面试基础题【1】--排序算法_追求决定高度的博客-CSDN博客 排序思路:基于简单的插入排序的改进,也叫缩小增量排序。排序思想:采用分治法的思想,将大问题划分为小问题进行递归求解-分而治之 代码:排序思想:分治法+填坑【递归思想】与“归并”不同的是,快排的分区是按照基准值进行分区的,将比基准值小的分在左边, 比基准值大的分在右边。代码:...

2022-06-30 13:00:21 129

原创 面试基础题【1】--排序算法

今儿就来个排序算法吧!!!个人记忆口诀:冒泡选择插,希尔归并快,堆、桶、计数、基

2022-06-27 21:02:45 175

原创 leetcode 6104 统计星号

重复子问题,递归解决。代码:

2022-06-26 17:07:13 116

原创 leetcode面试模拟题集

周末稍作修整,按心情挑几道题目做做,看到了岗位面试题集,就点进来了~这道题,leetcode上刷过类似的,是 n 平方的 螺旋矩阵,从这道题目来看,我还是没能掌握该题型!!leetcode 59 螺旋矩阵 给定 n * n 的矩阵,输出 顺时针的数组元素。解题的关键是 选择什么变量 作为循环的条件!!!答案:圈数,根据行列计算得到。由于是 方阵,因此,当出现 n%2 不为0时,不成圈,需要另外补值。最大的难点在于该矩阵为非方阵,因此圈数的计算以及多种补值的情况。下图是对代码的注解,方便理解代码: 代码:

2022-06-25 18:43:43 186

原创 2304. 网格中的最小路径代价-297地平线周赛回顾

有一说一,如果这道题用dfs不会报超时错误的话,对我来说还是比较简单的,但事与愿违,dfs确实不好做这道题,计算量太大,很容易超时。当然,凡是能用dfs做的且超时,用dp做基本都能解,可能我个人对dp不是很熟练,所以写起来有点磕磕绊绊。思路:ps:这里难就难在路径太多,数值太多,让人有点晕- -动规五部曲:1.dp数组---含义见上;2.初始化----显然第一行到自己这一行的代价是它本身;3.递推公式:重点!!!dp[i][j]=min(dp[i][j],dp[i-1][j]+moveCost[grid[i

2022-06-24 20:28:39 146

原创 2303.计算应缴税款总额-297地平线周赛回顾

第一题,简单的递归调用即可解决。可能有部分人不太熟悉递归调用,总是想到用这个方法,但不知道如何去写,我也是最近才开窍的,简要说一说吧:思路:首先、判断一道题是否可以递归调用,应该判断它是否可以拆解成无数个相同的子问题。那ok了,那如果size==2,下一层传入的参数先更新一下:...【如果更多层,步骤大同小异,只要注意更新传入的参数即可】代码:最近刚刚开窍,还得努努力夯实一下!ヾ(◍°∇°◍)ノ゙加油!!...

2022-06-24 14:59:24 125

原创 HJ70 矩阵乘法计算量估算

考察基础,对string的用法是否熟悉,没有太大技巧,难在对输入的处理。注解在代码中说明;代码:

2022-06-23 18:12:30 171 1

原创 顺丰01. 顺丰鄂州枢纽运转中心环线检测

顺丰XX杯第一题,说实话,当时看这个题目,可把我吓住了,当时看了背景晦涩难懂,就放弃了。现在再看看,真的有被无语到。本来就是一道检查是否成环的问题,非凹一个背景上去,还是在第一题,一个字:绝!一、用mapm,来存放,如果找到的值所对应的address存在表示成环;二、利用快慢指针,如果某时刻快指针与慢指针相遇,则此时必存在环;如何模拟呢?因为一个结点的指向可能有多个,所以用邻接表来存储每个结点的相邻结点。如何判断呢?通过判断,某个邻接表内的结点是否被访问过...

2022-06-22 21:36:01 126

原创 顺丰车辆入场识别-电子围栏问题

比赛的时候计算点到连线的距离,但是发现漏洞太多,没法解决。搜了一下巨佬们的解法,发现有个大佬的解法思路都很清晰。思路:交点法(射线法):如图所示注意:题目中表示,给定的点不会出现在边界上,可以理解为不考虑边界上的点。 代码:数学能力很重要啊~...

2022-06-22 16:55:58 448

原创 顺丰小哥派件装载问题——典型的01背包问题

题目:比赛的时候没看这一题- -!!没想到竟然是一个典型的01背包问题,早知道这样我早写这题就好了,我真的栓Q了。思路:与背包问题对比:所以,发现,两者问题没有丝毫差别,还等什么?直接肝啊!*1* dp数组含义:dp[i]表示当装入 体积 为 i 的快递后,快递箱中快递能得到的最大容量;*2* 递推公式:两种情况,装还是不装,选择其中最大值:dp[i]=max(dp[i],dp[i-N[j]]+N[j]);*3* 初始化:dp[0]=0;*4* 遍历顺序;*5* 打印dp注意:dp写法一般有两种,分为二维d

2022-06-22 14:59:58 592

原创 547.省份数量与顺丰科技05竞赛

菜就一个字

2022-06-21 17:27:19 54

原创 2312. 卖木头块

298场 leetcode 周赛最后一题!虽然比赛的时候连题都没时间看,但赛后还是要好好复盘,谁让我菜呢。。看完题目,脑袋里就蹦出来两种方法:dfs、dp,因为两者都用了递归的思想。仔细想想 dp还是靠谱,解决相同子问题。那如何去实现dp呢?这就难到我了 — —!思路不明确,于是浅看了一下答案:思路:容易不太能理解的点就是:按照“灵神”的解法,自己也梳理了一遍动规五部曲:1.dp[i][j]:一般题目中是二维数组,设dp时也为二维数组,含义:切割高 i 宽 j 的木块后,能得到的最大钱数;2.初始化:dp

2022-06-21 16:25:09 144

原创 2311. 小于等于 K 的最长二进制子序列

leetcode 周赛,我来一发马后炮吧。第一遍读下来没太懂题目意思,后来多读几遍才知道题目所表达的含义:思路:1.最长子序列——选择所有0——将 1 与 0 的位置分别用两个数据结构存储;2.不大于k——从低位到高位对 存储 1 位置的 数据结构进行计算———将计算结果与k对比判断;ps:注意,直接pow(2,x)会很容易崩溃,需要进行类似“剪枝”的操作,在计算的过程中进行丢弃可能 >k 的情况;代码:题外话:本来想用 string 分别存储 0 1 的位置 ,但却忘记 char 只有0-9 ,两

2022-06-20 20:31:33 182 1

原创 5218. 个位数字为 K 的整数之和

趋势科技 2022.6.19周赛 中等题【1】

2022-06-20 15:34:46 216

原创 leetcode2两数相加

思路:之前写这种题的套路就是,将其他数据结构转变成字符串形式,按照 Max(length1,length2)+1的方法给 两个 字符串分别补0;然后 按位相加,设置一个 进位数 num ,用来记录下一次是否会进位。用该方法可以很好解决二进制加法的问题。但本题好像比较麻烦,第一、给的两个链表,涉及到多个链表遍历,第二,按照逆序存储,会涉及反复的字符串翻转;也尝试 去 用 惯用的伎俩去解,写的是超级麻烦,还没成功,想去调试,发现还不好调试,于是浅看了一下答案。发现,补0 的操作可以糅合在循环中,且可以直接进行链

2022-06-14 16:27:28 124

原创 leetcode201 数字范围按位与

二进制的公共前缀按位与:&每次对 num 与 num -1 进行 按位与 运算后 ,num 最右边的 1 都会被抹去为 0通过 迭代,每次right 都会变小 ,当 right right的情况

2022-06-14 14:33:23 59

原创 leetcode 202 快乐数

思路:要么循环到1返回为true;要么进入循环,返回false;不可能的情况:无穷大,因为四位及以上的数字经过题目中的方法后都会少一位,所以最坏的情况在三位及以内数中循环。 如何考虑循环?第一种方法,考虑 可以用一个集合来判断是否插入重复元素,用其他数据结构查询时间复杂度太高,不建议使用;第二种方法,考虑快慢指针,慢指针走一步,快指针走两步,如果最终两者相遇了,那么显然出现循环了。ps:之前写了个错误代码,因为没看清题意,过了403/404,最后一个"1111111"没过,我以为案例错了,为了100% 通过

2022-06-13 17:43:47 76

原创 leetcode384 打乱数组&(类 And this指针)

说实话,对于这种题,之前都是跳过的,因为觉得肯定面试笔试肯定用不到,但是自从一次面试,面试官问我类的一些函数实现,调用的时候,我傻眼了。我曾经一直避开的东西,面试中还是需要的!于是痛定思痛,这次就勇敢面对吧。首先,leetcode 给了 注释 和三个 成员函数:Solution *obj=new Solution(nums)--------这是一个在堆空间中创建类对象的方法面试中没回答上来的问题:如何创建一个类对象?答:创建类对象有三种方法,以上题为例:本题代码:注意:VS中完整代码

2022-06-13 16:18:49 126

原创 leetcode91解码方法

思路:题目看着简单,但是做起来并没有那么清晰,看题解,该题和 爬楼梯 的题目很类似,想了想确实如此,此题与爬楼梯的区别在于:代码:注意:

2022-06-12 17:53:29 82

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除