算法
记录点滴人生
这个作者很懒,什么都没留下…
展开
-
01背包问题Java实现
动态规划的基本思想:将一个问题分解为子问题递归求解,且将中间结果保存以避免重复计算。通常用来求最优解,且最优解的局部也是最优的。求解过程产生多个决策序列,下一步总是依赖上一步的结果,自底向上的求解。动态规划算法可分解成从先到后的4个步骤:1. 描述一个最优解的结构,寻找子问题,对问题进行划分。2. 定义状态。往往将和子问题相关的各个变量的一组取值定义为一个状态。转载 2014-04-02 11:01:56 · 3144 阅读 · 1 评论 -
并查集详解 (转)
并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?)来看一个实例,杭电1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点转载 2015-11-03 14:29:05 · 410 阅读 · 0 评论 -
相对熵(KL散度)
今天开始来讲相对熵,我们知道信息熵反应了一个系统的有序化程度,一个系统越是有序,那么它的信息熵就越低,反之就越高。下面是熵的定义 如果一个随机变量的可能取值为,对应的概率为,则随机变量的熵定义为 有了信息熵的定义,接下来开始学习相对熵。 Contents 1. 相对熵的认转载 2017-07-24 18:30:00 · 1181 阅读 · 0 评论