- 博客(22)
- 收藏
- 关注
原创 打卡 202. 快乐数
第二步:关键词 “无限循环”,考虑哈希表。该题提示 n 小于等于2,147,483,647,所以 n每一位的平方和最大为810,范围不大。定义sum来存储平方和,当sum等于一则return true,当哈希表重复则return false;第一步:考虑如何计算 n 每一位的平方和。
2023-04-02 21:39:19 66
原创 打卡.初见哈希表 leetcode242. 有效的字母异位词 383. 赎金信
【代码】打卡.初见哈希表 leetcode242. 有效的字母异位词 383. 赎金信。
2023-03-29 20:36:14 62
原创 打卡 707.设计链表 熟悉链表的基本操作
如果产生Line 38: Char 14: runtime error: member access within null pointer of type ‘struct MyLinkedList’ [solution.c]这样的报错,就是编译器不能判断我们循环中的值是否为空指针。下面是csdn截的图。
2023-03-24 10:36:02 76
原创 打卡剑指Offer 29.顺时针打印矩阵,与54螺旋矩阵相同
新思路体现在重新定义边界,不需要记录已经走过的路径,走完直接扔掉。判断若重新定义后,边界交错,则遍历结束,跳出循环,返回答案。本题与54题相同,哈哈,学了新思路,舒服多了。
2023-03-22 15:35:20 72
原创 打卡 54.螺旋矩阵 折磨
这题用的做螺旋矩阵Ⅱ的思路来的,按着Carl大佬的循环不变量来的,我学艺不精,代码东拼西凑,缝缝补补,硬跑出来的,代码看起来很奇怪,但是这样它才能跑出来。后续再试试其他大佬的思路。
2023-03-22 11:06:55 56
原创 打卡 209. 长度最小的子数组 滑动窗口
就是不断的调节子序列的起始位置和终止位置,从而得到我们想要的结果。只用一个for循环,一定是表示滑动窗口的终止位置。本题的窗口需要满足大于等于target。2.如何移动窗口的起始位置。3.如何移动窗口的结束位置。
2023-03-21 16:54:14 41
原创 双指针练习 977.有序数组的平方
数组平方的最大值就在数组的两端,不可能在中间。所以考虑双指针法,left指向起始位置,right指向终止位置。定义新数组result,与原数组一样大,让index指向终止位置。
2023-03-21 16:03:47 42
原创 69.x的平方根
如果 right = x / 2,就需要额外加一条x = 1的特殊情况判断。二分法,找到mid*mid之后等于target或者最接近的。
2023-03-20 17:51:30 33
原创 打卡day1 704.二分查找
当target在下标Mid的左边时,即 nums[mid] > target ,下一轮循环的又边界变为mid-1,因为mid的值已经判断过了,不需要放进下一轮。题目提供的信息有:**1.有序数组 2.元素不重复, **所以可以使用二分法。方法一:定义target在[left,right]区间,左闭右闭。如果目标值在mid的左边,则右边界更新为mid,因为右边为开。这个题目可以用来熟悉对区间的定义,遵守循环不变量原则。目标值在右边,左边界则更新为mid+1。方法二 ,定义区间为左闭右开。
2023-03-19 14:51:29 35
空空如也
笔试的最后一题要求C语言完成
2023-03-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人