自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HJ108 求最小公倍数

辗转相除法求出最大公约数,然后求出最小公倍数。时间复杂度:O(N)

2024-01-01 17:42:40 389 1

原创 HJ107 求解立方根

设置递增步长step为0.01,从起点0开始计算x^3,直到无限接近目标值。注意:负数需要特殊处理。时间复杂度:O(N)

2024-01-01 17:37:56 423

原创 HJ103 Redraiment的走法

dp方程初始化:如果不能调到任何的桩,那么只能在起点,所以初始化 dp[1-n] = 1。由此可得dp方程,dp[i] = max(dp[i], dp[j]+1)。求取最长递增子序列。

2023-12-10 17:18:25 114

原创 HJ99 自守数

时间复杂度:O(n)

2023-12-10 17:03:09 81

原创 HJ97 记负均正

【代码】HJ97 记负均正。

2023-12-09 17:35:34 54

原创 HJ96 表示数字

时间复杂度:O(n)

2023-12-09 17:32:57 46

原创 HJ94 记票统计

利用哈希表,投票是按姓名从哈希表中取出对应的票数,如果不在哈希表内证明为无效。时间复杂度:O(n)

2023-12-09 17:27:56 45

原创 HJ92 在字符串中找出连续最长的数字串

时间复杂度:O(n)

2023-11-27 14:50:09 72

原创 HJ91 走方格的方案数

用dp[i][j]表示达到坐标(i,j)的方案数,那么dp[i][j]=dp[i-1][j]+dp[i][j-1],我们需要对dp方程进行初始化,很明显在左边界只能往下走,即dp[1-i][0]=1,在上边界只有往右走,即dp[0][1-i]=1,最终返回dp[n][m]时间复杂度:O(n+m)

2023-11-27 14:44:30 55

原创 HJ90 合法IP

时间复杂度:O(n)

2023-11-27 14:37:32 77

原创 HJ86 求最大连续bit数

【代码】HJ86 求最大连续bit数。

2023-11-27 14:30:49 45

原创 LeetCode 5. 最长回文子串

中心扩散法,枚举中心,利用双指针从中间向两边扩散,遇到s[left]!= s[right]结束。1. 奇数类型回文串需要从i-1, j+1 向两边扩散,例如:bbbabbb。2.偶数类型回文串需要从i,i+1向两边扩散,例如:bbaabb。时间复杂度:O(n^2)

2023-11-11 11:49:21 91

原创 HJ77 火车进站

1.如果还有火车还有未进站,可以选择进站或者不进站。2.如果车站还有车未出站,可以选择出站或者不出站。进站火车压入栈中,出站时出栈。时间复杂度:O(n!

2023-11-05 17:53:31 117

原创 HJ76 尼科彻斯定理

m个连续奇数之和,所以我们只要求出连续奇数的第一位就能以此枚举所有奇数,连续奇数是一个等差数列。时间复杂度:O(n)

2023-11-05 17:49:40 137

原创 HJ73 计算日期到天数转换

模拟,将每个月的天数相加,需要注意闰年的2月多非闰年多一天。闰年:能被4整除但是不能被100整数,或者能被400整除。时间复杂度:O(n)

2023-11-05 17:42:26 101

原创 HJ72 百钱买百鸡问题

鸡雏三值钱一,所以鸡雏的数量一定是3的倍数,这样才能凑成整数。

2023-11-05 17:39:40 110

原创 LeetCode 44. 通配符匹配

当pj是*号时,可以选择使用*替换字符,那么dp[i][j]就从dp[i-1][j]转换而来,如果不选择使用*,那么dp[i][j]就从dp[i][j-1]转换而来。设dp[i][j]表示字符串s的前i个字符和模式p的前j个字符是否匹配。时间复杂度:O(m*n)

2023-10-29 17:44:41 126

原创 HJ65 查找两个字符串a,b中的最长公共子串

时间复杂度:O(n*m)

2023-09-24 17:51:27 95

原创 LeetCode 69. x 的平方根

注意:mid * mid 可能会超出 int 上限,需要转化为 long。<= x,采用二分法求出(1, x) 之间a最大值。时间复杂度:O(logn)

2023-09-24 17:37:24 68

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

3.计算时从矩阵栈中弹出两个矩阵,计算并记录计算次数,再将计算后的结果矩阵压入矩阵栈中。2.遍历计算表达式,遇到A-Z压入矩阵栈,遇到 ( 压入操作符栈,遇到 ) 进行计算。1.开两个栈,矩阵栈用于保存矩阵信息,操作符栈用于保存括号。时间复杂度:O(n)

2023-09-23 17:53:39 131

原创 HJ69 矩阵乘法

时间复杂度:O(n*m)按照题意模拟计算即可。

2023-09-23 17:47:21 260

原创 HJ60 查找组成一个偶数最接近的两个素数

1.差要最小,两数相隔距离就要最短,可以从n/2开始向两边扩散枚举。,如果有数字能被n整除就不是素数。次,时间复杂度:O(n*2.判断素数,枚举1-外层循环n次,内层循环。1.穷举两数和等于n。3.求差最小的两素数。

2023-09-17 18:32:01 90

原创 HJ61 放苹果

f(m,n)表示将m个苹果放在n个盘子中所有的放法。

2023-09-17 18:25:32 83

原创 HJ62 查找输入整数二进制中1的个数

1.与1做与运算,只有末位为1的数与1做与运算结果才为1。2.每计算一次,数字右移一位,直到为0。1.求10进制数的二进制串。时间复杂度:O(n)时间复杂度:O(n)

2023-09-17 18:15:07 79

原创 HJ63 DNA序列

滑动窗口求子串复杂度为O(n),求窗口内的GC比例复杂度为O(m),所以整体时间复杂度:O(n*m)。1.在上面代码中,每次窗口都要求一次GC比例,但是窗口内只有首尾元素发生变化,无需每次都遍历。2.求GC比例可以换成求GC字符数量,因为总量不变,GC数量越大,比例越高。1.采用滑动窗口求出长度为n的所有子序列。2.计算每个子序列的GC比例。3.保存最大的GC比例。时间复杂度:O(n)。

2023-09-17 18:05:34 81

原创 HJ64 MP3光标位置

3.每次光标移动之后需要更新当前窗口。1.滑动窗口来求取当前列表歌曲。2.需要考虑特殊翻页情况。时间复杂度:O(n)

2023-09-17 17:57:48 73

原创 HJ59 找出字符串中第一个只出现一次的字符

1.遍历所有字符,并利用map记录出现的次数。2.再次遍历字符,找到出现次数为1的字符。时间复杂度:O(n)

2023-09-10 17:35:49 98

原创 HJ58 输入n个整数,输出其中最小的k个

维护一个长度为k的最大堆,每次将最大值弹出,遍历所有数字,最后堆里的数字就是最小的k个数字。按照从小到大排序,取前K个数字。时间复杂度:O(n*logn)时间复杂度:O(logn)

2023-09-10 17:33:32 108

原创 HJ57 高精度整数加法

按照传统加减法模式,从最后一位开始,逐位相加,逢十进一,传统方式从右往左相加,可以将数字翻转,变成从左往右按照数组遍历顺序相加,最后再将结果翻转。时间复杂度:O(n+m)

2023-09-10 17:29:01 513

原创 HJ56 完全数计算

如果能整除即为约数(约数至少两位,i*i = n,所以i的最大值为。1.求出每个数的所有约数,判断是否为完全数。时间复杂度:O(N)

2023-09-10 17:23:02 93

原创 HJ55 挑7

1.判断是否为7的倍数:对7求余,余数为0表示为7的倍数。2.判断是否包含7:依次判断每一位数字是否存在7。符合1或2的即为答案,穷举所有数字,寻找结果。时间复杂度:O(N)

2023-09-10 17:16:59 110

原创 HJ53 杨辉三角的变形

所以不能构建整个杨辉三角,肯定有其他规律可言,发现从第三行开始偶数位置的分布成{2,3,2,4}的规律。根据题目要求,n 最大取到。时间复杂度:O(N)

2023-09-03 11:42:30 149

原创 HJ50 四则运算

时间复杂度:O(N)

2023-09-03 11:36:29 155

原创 HJ51 输出单向链表中倒数第k个结点

时间复杂度:O(2n)时间复杂度:O(n)

2023-08-06 17:48:16 157

原创 HJ52 计算字符串的编辑距离

如果s1[i] == s2[j] 证明当前位置的字符相等,无需操作,即dp[i][j] = dp[i-1][j-1];3.修改:s1(1 - i-2) 编辑为 s2(1 - i-) 再将s1[i-1] 修改为 s2[i-1)dp[i][0] 表示s1(1-i)编辑为空,那么需要删除s1的所有字符,即dp[i][0]=i;1.删除:s1(1 - i-2) 编辑为 s2(1 - j-1) 在删除s1[i-1];2.插入:s1(1 - i-1) 编辑为 s2(1 - i-2) 再插入s2[j-1];

2023-08-06 17:38:56 294

原创 HJ48 从单向链表中删除指定值的节点

时间复杂度:O(n)

2023-07-23 19:11:23 111

原创 HJ45 名字的漂亮度

贪心策略:要获得最大的漂亮度,优先将较大漂亮度分给出现次数最多的字符。时间复杂度:O(n)

2023-07-23 19:08:48 221

原创 HJ41 称砝码

【代码】HJ41 称砝码。

2023-06-18 16:43:46 54

原创 HJ40 统计字符

时间复杂度:O(n)

2023-06-18 16:42:24 84

原创 HJ38 求小球落地5次后所经历的路程和第5次反弹的高度

模拟小球下落再回弹的过程,记录做过的路程。

2023-06-18 16:40:28 61

空空如也

空空如也

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

TA关注的人

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