相关分享
CSPJ 教学思考:贪心算法
本文介绍了贪心算法在 CSP-J(信息学奥林匹克联赛入门级)教学中的应用。贪心算法通过每一步选择局部最优解,期望最终达到全局最优。作者强调了排序在贪心算法中的重要性,并提供了 sort 函数和自定义结构体排序的示例代码。文章还推荐了适合教学的题目,如 P2240 部分背包问题、P1223 排队接水等,并附上详细的解题思路和代码实现。适合正在备战 CSP-J 的学生和指导教师参考。
图解Blink-Tree:B+Tree的一种并发优化结构和算法
本文介绍了 Blink-Tree,这是一种 B+Tree 的并发优化结构。通过引入 high key 和 link 指针,解决了并发访问时的性能问题,特别适用于高并发环境的存储引擎优化。如果你对数据库存储引擎感兴趣,这篇文章不容错过!
对“技术质问产品的几个常见问题”的回答
给某大厂的技术新人做了一个关于产品思维的分享,提前收集了一些困惑,贴几条提及最多的,稍微聊一下。
哦对了,先帮产品说句话——技术同学,千万别简单地用“那个产品是傻X”来回答以下问题。这是因为,作为技术,如果你总觉得和你配合的产品都是傻X,那大概率,别人会觉得你也是——要不然,为什么选择与傻X共事?所谓 “若,我看周围皆傻X,料,世人看我亦如是”。
大众点评内容搜索算法优化的探索与实践
本文整理自美团技术沙龙第80期《美团内容智能分发的算法实践》,分享内容主要包括三部分。第一部分介绍了大众点评内容搜索的场景特点以及面临的挑战;第二部分介绍了为应对这些困难和挑战,技术团队在链路各环节上做的实践优化,包括内容消费和搜索满意度的优化等等;第三部分是总结和对未来的展望。
Lamport时钟介绍
在分布式系统中,由于有多个机器(进程)在一起协调工作,于是如何定义分布式系统中事件的先后顺序就成了难题,本文介绍论文 《Time, Clocks, and the Ordering of Events in a Distributed System》中提到的Lamport时钟。
B树、B+树索引算法原理(下)
在上一篇文章中,介绍了数据库索引的简单概念,以及B树的结构及核心算法,这一篇将继续介绍B树的变形B+树。
B树、B+树索引算法原理(上)
这一段时间由于在阅读boltdb代码的缘故,找机会学习了B树及B+树的算法原理,这个系列会花两个篇幅分别介绍这两种数据结构的实现,其用于数据库索引中的基本原理。
重复视频检测的价值和常见方法
全网范围内的主要精品视频主要来自MCN机构,一些公司为了更快更好地去覆盖全网内容,会选择和内容代理合作,而代理手上会有很多重复版权的内容,导致重复内容出现。另外,搬运视频也会导致重复内容出现,这些重复内容会造成极差的用户体验。
再者,大量内容相似的视频对于短视频平台存储、网络带宽等资源也是一个极大的挑战,为了不必要的资源浪费,对视频内容进行去重是非常有必要的。
写给开发人员的实用密码学(六)—— 对称密钥加密算法
在密码学里面,最容易搞混的词估计就是「密码」了,cipher/password/passphrase 都可以被翻译成「密码」,需要注意下其中区别。
从零实现 AES 加密算法
这篇文章介绍从零实现一个简单的 AES-128-ECB,其中 128 指采用 128 位密钥块,ECB 指采用 Electronic codebook 分组模式,并为长度不足 128 位的数据块填充 0x00。
本文代码部分选择使用 Python,因为其语法简单而强大,我想把更多时间、精力花在加解密流程上,而非语法细节上。本文所有代码仅供学习研究之用,不要用在生产环境!生产环境请使用流行、成熟的专用密码库,否则可能导致潜在的 Side-channel attack 和其它安全问题。
