- 博客(36)
- 收藏
- 关注
原创 贪心+线程安全单例
前一个数字 > 当前数字,说明单调性被破坏,需要把前一个数字 减 1,并把它后面的所有数字变为 '9'先把第一个存入,再依次比较。
2025-11-27 23:42:20
252
原创 贪心求区间问题
C++ explicit,noexpect,decltype,红黑树原理(五个性质+插入和删除操作)。同上,只不过是换个判断条件和说法。
2025-11-26 20:22:34
137
原创 还是贪心+typedef&#define&inline
NULL 和nullptr的区别:NULL在某些情况下==0,比如传入的是NULL类型,可能会调用test(int),如果传入的是指针,会变成nullptr,而nullptr一直是_nullptr;typedef:起别名+类型检查#define:函数展开+没有类型检查+预处理确定inline:提供类型检查+编译器确定。先用身高排序,在用list来依次插入,因为已经按大小排序了,直接用下标判断就可以。贪心优化版本,用两个变量保存,如果总的<0,肯定到不了。(指针常量,指针不变)(常量指针,内容不变)
2025-11-25 22:52:55
280
原创 【一】什么是web3.0
但也存在技术门槛高、监管不确定、能源消耗、用户体验待优化等问题。未来可能不会完全取代 Web2.0,而是与之共存,在金融、游戏、创意产业等领域率先突破。Web3.0 的应用场景广泛:去中心化金融(DeFi)让用户无需银行即可借贷、交易;去中心化自治组织(DAO)实现社区自治;此外,还包括供应链溯源、数字身份验证、去中心化存储等。与 Web2.0(由大型科技公司控制用户数据)不同,Web3.0 让用户真正拥有自己的数据、数字资产和身份。它通过区块链、智能合约、加密货币等技术,构建一个无需中介的点对点网络。
2025-11-24 22:41:27
500
原创 依旧贪心 & static,const
const和static不能同时修饰成员函数,因为static没有this指针,而const为了修饰this指针的。static:1.修饰局部变量(不推荐)2.修饰全局变量3修饰成员变量4修饰成员函数5修饰一般函数6线程安全。const:1修饰局部变量2修饰指针3修饰函数4修饰函数参数。思路是分别从前和从后比较,最后得到全局的答案。暴力求解超时了,明天更新贪心版本。
2025-11-24 22:26:38
389
原创 332. 重新安排行程&C++智能指针
是 shared_ptr 的旁路观察者,不参与所有权,用来避免循环引用。= 独占 + 可移动 + 性能最好 + C++11 最推荐的智能指针。如果不行就回溯恢复(target.second++)因为“拷贝导致资源转移”的危险行为已经被彻底淘汰。每次用掉一张机票(target.second--)= 引用计数共享所有权,但需要防循环引用。找到第一条完整路径就返回(保证字典序最小)按照字典序依次尝试可能的目的地。,如对象已释放,会返回空)深入尝试直到机票用完。
2025-11-17 22:44:55
115
原创 【Day2】倒排索引的最小可行实现(含代码与设计思路)
2. 为什么搜索系统必须用倒排索引而不是遍历:效率高,准确。记录,这样便可以方便地通过单词或记录查找到其所在的文档。一个未经处理的网页库中,一般是以文档。5. 明天计划:引入本地 + Redis 两级缓存。1. 倒排索引是什么:通过单词来找到具体的文章。在此项目中,倒排索引的数据结构采用的是。指的是将单词或记录作为索引,将文档。为出现在文档中的某个词语,对应的。3. V1 实现目标:可搜索。的集合以及该词语的权重值。有颠倒的意思,就被翻。4. 代码(加说明)
2025-11-06 00:46:11
181
原创 【Day1】为什么我选择构建自己的高并发搜索系统
思考:系统工程不是背八股,而是理解复杂系统的分层与权衡。为了从0开始搭建一个高并发高可用的C++搜索引擎,体会到现代编程语言开发的流程和技术细节,同时也搭建了各种服务,考虑到分布式开发的复杂性,所以实际的开发经验是十分重要的。也为成为一名优秀的后端开发做出必要的时间成本。在综合考虑之下还是选择了C++作为开发语言,因为其优异的性能表现和开源社区的支持,能很好的满足企业高并发下的场景使用。虽然牺牲了开发效率,但是其运行效率还是值得称赞的和期待的。目标:成为能独立设计高并发系统的 C++ 后端工程师。
2025-11-05 00:22:18
172
原创 leetcode1047
例如,在 "abbaca" 中,我们可以删除 "bb" 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 "aaca",其中又只有 "aa" 可以执行重复项删除操作,所以最后的字符串为 "ca"直接用string模拟栈,可以在尾部进行pop_back( )和push_back()操作。也就是说stack.top()==string.back()在完成所有重复项删除操作后返回最终的字符串。上反复执行重复项删除操作,直到无法继续删除。会选择两个相邻且相同的字母,并删除它们。
2025-10-20 23:16:35
115
原创 程序员编程以外的事(四):高效人士的七个习惯
《高效人士的七个习惯》是美国作家史蒂芬・柯维(Stephen R. Covey)的经典著作,书中提出的七个习惯为个人和职业的效能提升提供了全面的框架,以下是对这本书的总结:
2025-04-13 16:42:41
330
原创 Leetcode25. K 个一组翻转链表
是一个正整数,它的值小于或等于链表的长度。你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。的整数倍,那么请将最后剩余的节点保持原有顺序。个节点一组进行翻转,请你返回修改后的链表。
2025-03-10 23:41:08
210
原创 LeetCode21. 合并两个有序链表
新链表是通过拼接给定的两个链表的所有节点组成的。思路:第一眼觉得是双指针,直接判断就行。将两个升序链表合并为一个新的。
2025-02-11 23:16:07
215
原创 deepseek API配置,告别“服务器繁忙,请稍后再试”
在deepseek的爆火后,deepseek一度服务器被撑爆,但是我们可以利用deepsee-r1的api实现本地电脑配置,避免了因为电脑配置低和网络错误。
2025-02-11 22:54:14
404
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅