- 博客(43)
- 问答 (1)
- 收藏
- 关注
原创 LeetCode 56 合并区间
);(附 : 这种形式也适合于优先队列创建时的自定义比较器定义)比如:});当然了,本身优先队列里的对象如果是包装数据类型的话,就是升序的,这里只是举个例子。如果需要根据比较的元素来倒序排序,只需要return b - a。
2024-06-06 13:47:39
409
原创 LeetCode 26删除有序数组中的重复项
去重题,双指针,,因为题干说原地删除,且nums其余元素不重要。一个cur记录当前不重复的数应该插在第几位了,for循环里的i相当于是第二个指针(右指针),遍历数组来找不重复的元素。
2024-06-06 13:18:48
345
原创 LeetCode 两数之和 + 三数之和
思路:一个Map,key是数值,value是该数值对应的下标,遍历的时候判断一下当前数组下标对应的值在map里有没有可组合成target的(具体体现为在map里找target-nums【i】),如果有,直接返回,没有的话就加进去,继续找。思路:严格上来说算三个指针,一个i是维护当前遍历到的数字下标,之后的l和r指针是从i所处位置开始,在i + 1 到len - 1这个区间中寻找nums[i]的相反数。需要掌握的方法:map的get和containsKey。
2024-06-06 13:17:46
461
原创 Leetcode49 字母异位词分组
思路 : 字母异位词是字母排序不同,但字母总量相同的字符串,可以用一个排序后的String充当key,一个List收集对应该String的全部异位词。map.values() 取出Map的全部value值作为一个列表。toCharArray : String转char类型数组。如果有疑问和更好的见解欢迎交流。
2024-06-05 14:04:15
287
原创 LC 26删除有序数组中的重复项
去重题,双指针,,因为题干说原地删除,且nums其余元素不重要。一个cur记录当前不重复的数应该插在第几位了,for循环里的i相当于是第二个指针(右指针),遍历数组来找不重复的元素。
2024-06-05 13:30:46
227
原创 浅谈数据库索引优缺点
索引在数据库中起着重要作用,它可以提高数据检索的速度,但也会带来一些额外的开销和限制。索引是一把双刃剑,它在提高查询性能的同时也会带来一些额外的开销和限制,需要在实际应用中进行权衡和选择。
2024-05-24 15:37:12
881
原创 LeetCode 128 最长连续序列(hot100) 解题思路分享
如果希望On的话,那就采取设置一个Set的方法,这样空间复杂度是On,但是时间复杂度降到On(如果是常规做法,排序时间复杂度至少是Onlogn)set的作用就是一遍预处理读入全部数字,遍历的时候找到每一个可能的递增序列中的最小数,然后不断地加1向后找,维护一个longest作为结果。如果对时间复杂度没有要求的话,可以先排序,再一段一段地找,这样的好处是空间占用小。
2024-05-24 15:36:08
275
原创 git拉取单个目录/文件 -- 避免每次都要下拉全部代码
做开发的时候总是因为一起开发的同学改了代码就导致需要重拉全部代码,导致本地一些注释后才能不报错的代码也被更新了,在本地进行单测时,还得去一个个手动注释掉才不报错(某些特定功我没配环境,也用不到)在网上查了一下,单独更新某个目录or文件可以利用git的“sparse checkout”方法(设置稀疏检出)来实现设置sparse checkout模式,允许克隆子目录。
2024-03-01 13:26:29
2470
原创 crontab && history查看命令的执行时间
通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期性的日志分析或数据备份等工作。主要就是定时地执行某个脚本,而不需要耗费大量人力重复性执行。
2024-02-21 23:05:27
1391
原创 分支解决冲突 & 分支管理策略 git merge命令详解
而原来的快速模式,就是简单将master指针指向dev指针指向的内容而已,并没有自己创造空间。git config --global --add merge.ff false 仅针对所有版本库的所有分支有效。总的来说就是开发的时候巧用merge,当存在ff情况的时候而希望保存合并的痕迹,就使用–no–ff。以下命令输入后,即可省略 --no-ff 字段 ,第一个是针对master分支,以此类推。git config --add merge.ff false 仅针对当前版本库的所有分支有效。
2024-02-06 00:46:29
1094
原创 git版本回退。git reset参数详解,特殊提交情形下的git push操作(CR等常见场景),git reflog和git log的详解。
切换分支可以使用 git checkout <> 或者git switch ...创建分支可以使用 git checkout -b <. ...> 或 git branch <...> + git checkout <...>今日份chatgpt。
2024-02-05 16:03:35
1738
原创 git将远程仓库代码拉下覆盖本地仓库 && git remote&& git push -u 用法
2、由1引发出的问题,就是如果commit交错了,不一定要直接废弃,再add你想更改的文件,然后commit一下,随后push,此时的评审会收到你最新的更改。1、提交代码的时候,忘了把在本地测试时的东西删掉了,很尴尬的是已经给别人发了评审,还被看见了,然后我就把commit给废弃了。总的来说,建立分支之间的关联提供了便利性和操作简化,使得 Git 的使用更加流畅,特别是在协同开发和多分支管理的情境下。选项的作用是方便地建立本地分支与远程分支之间的关联,并设置默认的上游分支,以简化将来的推送操作。
2024-02-05 15:23:11
2299
原创 更改MAC终端样式(美化、易用的提示等)
之前用 Ubuntu、Elementary OS 时觉得其终端既漂亮又好用,购买的云服务器的默认终端也好看,一些牛人的桌面终端也配置得挺好看。虽然 Mac 的默认终端配置已经比 Windows 好看好用很多了,但还是觉得不够。先是自己尝试手动设置 Terminal 的配置参数,先改字体,将 SF Mono 改成 Monaco(之前版本的 macOS 终端默认字体是 Monaco,还是挺不错的,不知为什么后来改成了没那么好看的 SF Mono),再将背景设置成黑色,字体设置成绿色,营造黑客帝国的感觉,……
2024-02-01 16:42:43
3928
原创 一篇文章带你入门使用Linux中的curl命令
使用-d参数以后,HTTP 请求会自动加上标头Content-Type : application/x-www-form-urlencoded。上面命令会给 HTTP 请求加上标头Content-Type: multipart/form-data,然后将文件photo.png作为file字段上传。--data-urlencode参数等同于-d,发送 POST 请求的数据体,区别在于会自动将发送的数据进行 URL 编码。--limit-rate用来限制 HTTP 请求和回应的带宽,模拟慢网速的环境。
2024-01-31 23:28:02
1635
原创 学习使用Flask模拟接口进行测试
如果设置在请求头中,则定义的是请求体的数据类型;如果设置在响应头中,则定义的是响应体的数据类型;请求头--Request-Headers:一般我们在 post 请求中会向服务器发送一些参数,那我们就可以通过这个参数设置 post 的参数格式application/json:JSON 数据格式;application/x-www-form-urlencoded:表单默认的提数据格式;multipart/form-data:一般用于文件上传;
2024-01-30 22:36:06
1811
原创 Flask安装(mac/linux & windows)
随着你的 Python 项目越来越多,你会发现不同的项目 会需要不同的版本的 Python 库。虚拟环境可以为每一个项目安装独立的 Python 库,这样就可以隔离不同项目之 间的 Python 库,也可以隔离项目与操作系统之间的 Python 库。与 Jinja 共用,在渲染页面时用于避免不可信的输入,防止注 入攻击。用于实现 WSGI ,应用和服务之间的标准 Python 接口。上述版本是指支持的最小版本,应当尽量使用最新的版本。激活后,你的终端提示符会显示虚拟环境的名称。用于渲染页面的模板语言。
2024-01-29 23:28:47
1010
原创 怎样做好Code Review
Code Review代码评审是指在软件开发过程中,通过对源代码进行系统性检查的过程。通常的目的是查找各种缺陷,包括代码缺陷、功能实现问题、编码合理性、性能优化等;保证软件总体质量和提高开发者自身水平。
2024-01-28 21:53:26
1294
原创 LC每日一题记录 2861. 最大合金数
所有合金都需要由同一台机器制造,因此我们可以枚举使用哪一台机器来制造合金。对于每一台机器,我们可以使用二分查找的方法找出最大的整数 xxx,使得我们可以使用这台机器制造 xxx 份合金。找出所有 xxx 中的最大值即为答案。
2024-01-28 01:02:29
281
原创 Go语言安装及开发环境配置
这个选择因人而异,每一种IDE都可以支持Go语言,这里推荐微软的VS Code,对于很多语言都有比较好的支持,对于我这样的VIM用户也可以响应的Mapping。众所周知,由于墙的原因,在后期下载Go包时,并不是非常方便,所以建议提前设置好环境变量,否则会遇到常见问题1中的错误信息。在安装Go模块时(go get命令),由于众所周知的问题,可能无法顺利方法,建议在环境变量添加代理,以下地址任选其一就可以。在我的VS Code中打开zsh terminal时,显示的不够完美,出现红框中标识的问题。
2024-01-27 23:30:50
1511
原创 LC每日一题 2024/1/25 2859. 计算 K 置位下标对应元素的和
简单的位运算,就是寻找这个数对应的二进制中的1的个数是否与k相同,如果相同,就把这个数加到结果当中。可能涉及到的方法:Integer.bitCount() -->计算出二进制中包含的1的个数。
2024-01-25 22:24:58
390
转载 Github 2024-01-19 Java开源项目日报 Top10
创建周期:39 天开发语言:JavaStar数量:183 个Fork数量:9 次关注人数:183 人贡献人数:1 人Open Issues数量:5 个Github地址:https://github.com/mainpropath/AI-SmartFuse-Framework.git这个开源项目提供了一个简要的介绍,安装指南和当前的主要功能。更新。
2024-01-24 23:44:55
435
原创 Prompt Engineering
在当今人工智能领域,提问大型语言模型(Large Language Models,LLM)已经成为一种常见的实践,但如何向这些模型提出问题,或者更准确地说,如何引导它们产生期望的输出,成为了一个关键的问题。这引入了一个重要的概念,即"",也就是提示工程。随着大语言模型的广泛应用,提示词转变为一种工程,就是所谓的提示工程(Prompt Engineering);他是一种LLM使用技术,通过设计和改进 LLM的 prompt 来提高 LLM的表现,其目标是创建有效和可控的LLM系统。
2024-01-23 20:43:37
769
原创 php低版本(7.4)配置过程中遇到的问题及基本解决手段
目前php不支持较低版本的安装,如果安装低版本必须借助第三方库shivammathur。像这样突然中止然后报错,一般是网络问题,或是这个第三方下载本身不算很稳定,继续输入。source ~/.zshrc 刷新环境变量 -- 重要。最好是遵循引导操作增加环境变量等步骤。php -v 打印当前php版本信息。//将第三方仓库加入brew。
2024-01-23 20:42:34
1128
原创 PHP从0学习(二)
在声明命名空间之前唯一合法的代码是用于定义源文件编码方式的 declare 语句。所有非 PHP 代码包括空白符都不能出现在命名空间的声明之前。php//定义多个命名空间和不包含在命名空间中的代码namespace { // 全局代码?<html>php// 命名空间前出现了“<html>” 会致命错误 - 命名空间必须是程序脚本的第一条语句?类使用class关键字后加上类名定义。类名后的一对大括号({})内可以定义变量和方法。类的变量使用var来声明, 变量也可以初始化值。
2024-01-19 13:56:57
1265
1
原创 LC每日一题记录 2024/1/18 lc 2171 拿出最少数目的魔法豆
maxx递归判断以多少豆子为最终保留的数量时,留下的豆子数最多,因为已经遍历过了,所以此时可以确定比当前位置i还多的位置有len - i,这也是排序的根本目的所在。这里我们发现数据量很容易超过int的最大表示范围(大约是 2 * 10 ^ 9),所以使用long这个数据类型。将取出最少问题转化为留下最多的问题。先排序(升序),随后从前往后找,sum取得全部豆子的数量。
2024-01-18 19:04:37
464
1
原创 LeetCode 日常刷题 lc 82. 删除排序链表中的重复元素 II
情况二:从头节点开始,没出现重复的节点,则直接使得pre = pre.next,此时pre指向了头节点,nextNode指向头节点的下一个节点,假设此时nextNode不为空,且出现了重复,则nextNode自行向后遍历直到不重复后,pre.next指向了nextNode的next节点(这是全部重复节点的最后一个节点的next节点)此时pre.next = head,但是因为出现了重复,我们需要将它的next指向nextNode的next节点。
2024-01-14 11:18:40
368
1
原创 LeetCode 每日一题 2024/1/14 lc 83. 删除排序链表中的重复元素
简单的删除链表节点类型的题,只是需要在遍历过程中考虑删除全部的重复的值,为此设置一个临时节点temp,当temp和后续节点nextNode相同时,将一直遍历下去,直到两个节点不等,此时将最初的cur节点的next指针指向temp的next节点。
2024-01-14 10:41:20
501
1
原创 Leetcode HOT100 LC 35 搜索插入位置
原因:进行普通二分的时候,如果发现nums[mid] < target ,会不断地向后缩减查找范围,也就是 l = mid + 1 ,但是就算到最后,l的最大值也只能限定于nums.length - 1,而我们需要插入的位置是数组的最后,坐标为数组的长度,这是永远无法达到的。简单的二分,需要注意增加一处特判,判断target是否已经大于了数组的最大值,如果已经大于了,就直接返回。
2024-01-13 21:01:53
414
1
原创 Leetcode HOT100 LC22 括号生成(递归)
(1)左括号还未达到0,此时可以尽情地增加左括号,在此操作后同样可以立刻递归增加右括号。1、左右括号数量相等,此时必须先加入左括号,以保证生成的括号合规。(2)左括号以及达到0的情况,这时递归增加右括号。有了上面的思路,就可以实现代码了。
2024-01-13 20:53:52
386
1
空空如也
什么标签能实现如图效果?试了underline不行。。
2021-10-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人