【贪心算法】局部最优解 纯理论 贪心算法贪心算法,顾名思义,选当前最好的结果,不去考虑未来的结果。从局部最优解到全局解。 贪心算法,最终的解有可能不是最好的解,贪心只是保证了有这么一个解存在,如果要找到全局最优解,可以用其他的策略,比如动态规划,backtracking等。 贪心算法的应用场景有很多。在小学的时候,数学老师就问过我们,做包子要十分钟,洗衣机洗衣服要二十分钟,洗碗又要十分钟,问你要先做哪个。这里就有一个贪心的运用, 2025-04-13 算法 #算法 #贪心算法
ZSH 技巧:无需输入 ./ 就能运行当前目录下的程序 你是不是经常遇到在网上复制命令的时候粘贴到自己的机子上想要运行却提示command not found? 我也是,找了一大圈我终于找到了解决方案,只需要在zsh的配置文件中添加一个函数就好了 12345678910command_not_found_handler() { if [ -x "./$1" ]; then echo "执行本地程序: ./ 2025-04-12 Linux #ZSH #技巧 #命令行 #Linux
【leetcode】刷题家之701. Insert into a Binary Search Tree 请看题 一个简单的二叉树插入。 一颗二叉树的表现方式为,其左孩小于当前节点,其右孩大于当前节点。知道了这个就非常的简单了。只需要两个判断就能成功的去进行插入节点。 非常的简单,直接看代码。 1234567891011121314151617181920212223242526272829/** * Definition for a binary tree node. * public class 2025-04-10 leetcode #leetcode
【leetcode】刷题家之112. Path Sum 最近在学swift,感觉这个就像是c++和python的合体。 为了熟悉一下这个语法,刷题都用这个来写好了。 请看题 解题思路这道题给了我们一个targetSum,也就是每一个节点相加后的结果。要求找到这么一条路径,使其的值相加结果为targetSum。 那么很简单,每一次递归的时候传入targetSum - 当前的值,只要最终的结果为0,那么就一定能够找到那条路径,返回True即可。 有了这么 2025-04-07 leetcode #leetcode
【抛砖引玉】某书查看被删除的笔记 在刷某书的时候,在首页上总是能够刷到有一些被删除的笔记。 在我点进去的时候会提示笔记被删除,提示跳转到个人主页。 但是在这个之前,会闪一下没被删除的日记评论,这时候我就想到了,既然被删除了为什么会闪一下? 很快啊,我就拿出了我的抓包软件,也很快啊,我就抓到了正确的请求API。看了一下返回的值,果真是没被删除前的数据。 那么这时候我就想了,要是能够一个模块来hook这个请求的话,是不是就能继续看被删 2025-04-07 某红书 #某红书
【时间复杂度】代码时间复杂度计算 有这么一个少于十行的代码,你知道它的时间复杂度是多少吗? a. $T(n) \in \Theta(n^2)$ b. $T(n) \in \Theta(n)$ c. $T(n) \in \Theta(log n)$ [poll type=regular results=always public=true chartType=bar] a b c 2025-03-23 算法 #算法 #时间复杂度
AI算法实现项目 A*算法实现项目本项目包含两个主要部分:A*寻路算法实现(prac1)和图像识别模型实现(prac2)。 项目结构1234567.├── prac1/│ ├── A_star.py # A*算法实现│ └── A_star_epsilon.py # A*算法的ε变体实现└── prac2/ ├── Base.py # 图像识别模型基础类 └── 2025-03-20 算法 #A* #算法 #项目
【时间复杂度】算法时间复杂度计算 先不上具体的算法,先来理论一下如何去计算一个算法的时间复杂度。 这里给出一个递归关系的表达式,你能够得出具体的复杂度是多少吗? $f(n)=\begin{cases} 1 & n = 1 \ n + 4f(n/2) & n > 1 \end{cases}$ a. $f(n) \in \Theta(n^2)$ ✓ b. $f(n) \i 2025-03-20 算法 #算法 #时间复杂度
基于行为的测试-> Easymock(单元测试) 例子1 最近学到了对代码进行测试,学到了黑白盒测试,基于行为,基于状态的测试.. 记录一下自己的学习状态 示例代码1234567891011121314151617181920212223public class Premio { private static final float PROBABILIDAD_PREMIO = 0.1f; public Random generad 2025-03-15 技术 #Java #Easymock #单元测试
切换Github Copilot在使用自动commit的显示语言 因为默认的生成语言是中文,想要切换到英文。找了一大圈没有找到在哪里修改,不过最后还是找到了。发一个帖子来记录一下 vscode中输入ctrl + shift + p 1GitHub.copilot.chat.localeOverride 把原来的auto改为en就是英文 这样子在使用自动commit的时候就是英文了 2025-03-13 #github