- 博客(10)
- 收藏
- 关注
原创 Leetcode二分算法专题(持续更新)
图片源于视频:【二分查找为什么总是写错?【数组峰值 搜索旋转排序数组【基础算法精讲 05】】1、红蓝染色法定义好红色和蓝色的规则,移动left还是移动right,取决于哪边的区间确定了,如果可以确定mid右侧都是蓝色,就移动right,可以确定mid左侧都是红色,就移动left。这点跟我自己学二分查找的时候思路不太一样,比如我在做寻找数组中target的索引的时候,我会想着target在mid的右侧还是左侧,然后再去这个区间里找,比如mid<target了,那我就应该在右边找,所以让left=mid。
2025-07-03 11:25:53
811
原创 Leetcode 42.接雨水
初始时 left=0,right=n−1,leftMax=0,rightMax=0。指针 left 只会向右移动,指针 right 只会向左移动,在移动指针的过程中维护两个变量 leftMax 和 rightMax 的值。每列都向左右扫描重复信息没有利用,考虑动态规划,用leftMax和rightMax数组记录每列的左右柱子最高高度。时间复杂度:O(n),其中 n 是数组 的长度。遍历每列时间复杂度为O(n),每列再扫描O(n),总共O(N^2)。时间复杂度O(N),空间复杂度O(N)
2025-02-26 12:05:18
368
原创 leetcode31——下一个排列(结合例子解释每步思路)
令待交换的两个数为“小数”和“大数”1. 从后往前找第一个升序对i,j使得nums[i]<nums[j]。“小数”就是nums[i]。此时[j,end)必然是降序2. 再从后往前找一个比“小数”大的数作为“大数”,交换二者3. 交换后将“大数”后的所有数重新排为升序:此时[j,end]仍必为降序,所以逆置即可比如1243 ,交换2和3为1342肯定比交换1和2为2143好比如321,交换21为312。
2025-02-23 17:41:55
227
原创 leetcode347——前K个高频元素(优先队列实现堆)
(下面的优先队列就是用类定义比较规则)但题目说明时间复杂度需要优于O(nlogn),而此方法使用的sort函数复杂度等于O(nlogn),因此还不够好。
2025-02-18 11:56:04
833
原创 vscode c++突然不能识别std库,报错提示:undefined reference to std::ostream::operator<< 或者 std::cout等等 的解决方法
前两天Vscode还好好的,今天刷力扣想在本地调试发现关于std命名空间的所有代码都报错,识别不了。修改tasks.json的command行原来的gcc为g++有可能是C++拓展擅自更新把这个重置了?
2024-12-17 11:31:11
610
原创 Unity3D Animation——动画复用
动画文件是描述骨骼节点的移动,不同模型骨骼节点可能不同。要实现动画复用就需要中间桥梁Avatar,完成“对A骨骼的描述——>unity肌肉拉伸描述——>对B骨骼的描述”的转变。对应Unity中的操作为:选择角色a的rig选项,种类选humanoid,自身创建avatar,应用角色b也这样操作动作库文件的rig选项,种类选humanoid,从a创建avatar(这样就把动画文件对a骨骼的描述,改变为了对avatar肌肉的描述)在animator组件中为他们指定各自的avatar。
2024-12-17 11:30:03
1078
原创 Three Step Technique——个人认为初学者学习Unity有效的三个建议
学习了一段时间C++,我想要将学到的C++知识通过游戏实践,于是搜索unity教程,不同以往,今天想在youtube上搜搜,而不是往常一样的B站。随意翻看着,找到了一个视频,看完感触颇深,做此文章记录。
2023-10-09 22:13:39
228
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅