计算机算法的本质(转)
|
数据结构与算法
•
|
点赞 0
|
预览 362
「算法工程师」做的这个「算法」,和「数据结构与算法」中的这个「算法」完全是两码事, 免得⼀些初学同学误解。
对前者来说,重点在数学建模和调参经验,计算机真就只是拿来做计算的工具而已;而后者的重点是计算机思维,需要你能够站在计算机的视角,抽象、化简实际问题,然后用合理的数据结构去解决问题。
布隆过滤器在缓存系统中的实践
|
数据结构与算法
•
|
点赞 0
|
预览 294
在业务开发中,如果遇到并发量很高的情况下,通常会使用缓存对系统查询性能进行优化,在缓存命中率很高的情况下,缓存的使用能够大幅提升系统查询性能。但是在缓存命中率非常低场景下,如果采用传统缓存读取模式,大部分的请求会穿透至数据库,造成数据库的巨大压力。
编辑距离(Levenshtein Distance)
|
数据结构与算法
•
|
点赞 0
|
预览 750
Levenshtein Distance,一般称为编辑距离(Edit Distance,Levenshtein Distance只是编辑距离的其中一种)或者莱文斯坦距离,算法概念是俄罗斯科学家弗拉基米尔·莱文斯坦
最长回文子串-动态规划
|
数据结构与算法
•
|
点赞 0
|
预览 481
对于一个子串而言,如果它是回文串,并且长度大于 2,那么将它首尾的两个字母去除之后,它仍然是个回文串。例如对于字符串ababa,如果我们已经知道bab是回文串,那么ababa一定是一个回文串,因为它首尾两个字母都是a。
详解时间复杂度
|
数据结构与算法
•
|
点赞 0
|
预览 455
一. 为什么需要复杂度分析你可能会有些疑惑,我把代码跑一遍,通过统计、监控,就能得到算法执行的时间和占用的内存大小。为什么还要做时间、空间复杂度分析呢?这种分析方法能比我实实在在跑一遍得到的数据更准确吗?这种评估算法执行效率的方法是正确的。但是这种统计方法有非常大的局限性。1. 测试的结果依赖测试的