每日力扣
文章平均质量分 60
为期一年的力扣刷题训练,每日更新。
Fu_god
CQUPT在校,目前正在更新数据结构实验的解题代码以及c++库所有编程题代码,欢迎关注,任何问题欢迎交流
展开
-
9.26 利用docker在服务器上部署springboot项目的学习和探索。
待我明日来写。原创 2023-09-26 22:39:03 · 105 阅读 · 2 评论 -
9.23~9.24 《记我的第一次acm比赛》
我参加的是本校的校赛,对于我这个算法小白来说,这是一次严峻的挑战。大赛先进行线上赛,为期两天,战队排名前50即为成功,可以参加后续的线下赛。1.4.7.10题由我负责,2,5,8,11由老陈负责,剩下的三道题由老洪负责。在这样的分配下,我们正式开始了我们的为期两天acm之旅。在接下来的几天时间里,我将会在参考题解的情况下,结合我们队伍的做题情况,逐题分析。这里仅晒出我们最后的提交情况,我们共提交了99次,成功概率十分低。并非没有刷题,相反的,我将这两日的所有时间都拿来刷题了。,这便是我们起名的缘由。原创 2023-09-25 23:14:27 · 79 阅读 · 1 评论 -
9.22《Reverse Integer》
其次:对于rs是否会超过范围:我们有rs+num<=max且rs+num>=min,所以在rs+num之前,只需要进行判断num<=max-rs和num>=min-rs的结果是否为真,这里为了避免num已超出范围,将num,rs以及max和min均缩小10000.0倍。首先对于num大于max,由于二进制的原因,此时int的符号位变为1,则num显示为负数,当num小于min时,同样变为正数,而rs和num在正常情况下,一定是同号的,因此判断num和rs是否同号即可判断。接着逆序遍历字符串得到int结果。原创 2023-09-22 21:48:49 · 41 阅读 · 1 评论 -
9.21《最长回文子串》
4.验证步骤如下:先找到和前指针对应的首字符相同的字符所在位置,接着进入第二个循环,前后向内逼近,每次都需要验证前后指针包含的字符相同。且这么做后,双数中心便不存在了,如其中一个中心为#b,则左右为一位置为a和#,显然一字符一#,不会相同。同样的由中心向两边延申,我们可以发现,此时的回文长度/2再减一就是本来不做处理时单字符对应的回文长度,我们将其定位回文半径R。1.传入一个字符串的首地址,目的便是寻找以这个字符串首字母为首的回文字符串,若有返回最长字符串,若无,返回rs_none。原创 2023-09-21 23:25:19 · 47 阅读 · 0 评论 -
9.20《 寻找两个正序数组的中位数》
那么当c1左边的数加c2左边的数为总长度的一半时,也就满足了总数组中位数的条件,这时,RMin和LMax的平均即为中位数。同样的,当bj>ai+1时,c1应当右移。简单,定义一个最小值和最大值,当c走到0时,那么他左边的LMax需要赋值,为满足后续的LMax<RMin条件,LMax应赋最小值,同样的,当c走到最右端,RMin赋为最大值以满足RMin>LMax.好现在我们开始找c1和c2,显然,因为时间复杂度的限制,二分法先找出c1是最好的方法,那马么当找到一个c1后,下一个ci应该继续向前还是向后二分呢?原创 2023-09-20 22:32:03 · 37 阅读 · 1 评论 -
9.18 腾讯精选50题之(打家劫舍)
同样的正确结果,于是我总结出来了。(本来解决这题很快,但是纠结这部分纠结了几小时,搞得没有其他时间再刷其他题了,所以今日只有一道题。设辈分数为row,row为单数时的和为3+1+3+1=8,row为双数时的和为4+5=9,再比较两数取较大值即得结果。但是这里出现一点问题,在Leetcode只要返回的是正确答案(7)时,就会出现变量初始化错误。这里返回的rs始终为0,也就是返回值错误的情况。在标准输出里,我们看到odd的最终结果就是答案。难点在于二叉树遍历,这里采用前序遍历,使用递归实现,简单明了。原创 2023-09-18 23:03:04 · 45 阅读 · 0 评论 -
9.19 《两数相加》《两数和》
两个链表需要同时遍历,这时新链表在该对应位置上的val应等于两链表中之和,不过在这之前,需要看上一个链表位置是否为大于10的数,如果是,需要进行进位操作。除此之外的另一个难点便是首位进位问题,两个链表相加,其和可能与最长链表位数相等,也可能比其多一位。很多冗杂的代码是为了对付leetcode的null pointer错误。原创 2023-09-19 15:51:33 · 37 阅读 · 0 评论