上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 32 下一页
摘要: 一,问题描述 给定一个数组,求解该数组中有多少组逆序对。比如 [7,5,6,4]一共有五对逆序对。分别是:(7,6),(7,5),(7,4),(6,4),(5,4) 二,算法分析 有两种方法来求解逆序对 的数目。一种是,对数组中的每个元素,都与它后面的元素进行比较,若后面的元素比它小,则找到一个逆序 阅读全文
posted @ 2016-06-17 16:57 大熊猫同学 阅读(1204) 评论(0) 推荐(0) 编辑
摘要: 本文记录快速排序算法的一个精美实现,关于其中的一些优化或者思路请参考如下资料: 快速排序中的分割算法的解析与应用 http://www.cnblogs.com/hapjin/p/5518922.html http://blog.csdn.net/hapjin/article/details/4978 阅读全文
posted @ 2016-06-16 12:00 大熊猫同学 阅读(780) 评论(0) 推荐(0) 编辑
摘要: 一,分割(partition)算法介绍 所谓分割算法,先选定一个枢轴元素,然后 将数组中的元素分成两部分:比枢轴元素小的部分都位于枢轴元素左边;比枢轴元素大的部分都位于枢轴元素右边 此时,枢轴元素在数组中的位置就被“永久地确定”下来了 将整个数组排序,该枢轴元素的位置不会变化。 另外,枢轴元素的选取 阅读全文
posted @ 2016-06-15 13:16 大熊猫同学 阅读(4337) 评论(0) 推荐(0) 编辑
摘要: 一,问题描述 给定若干个字符,求解 这些字符能够表示的最多组合个数。比如{'a','b','c'} 一共有七种组合。(每种组合没有重复的字符 且 组合的种数与顺序无关,如 ab 和 ba 是同一种组合) a、b 、c 、ab 、ac 、bc 、abc 其实,求组合个数,可以用公式来求解:具给定 n种 阅读全文
posted @ 2016-06-14 11:58 大熊猫同学 阅读(3608) 评论(0) 推荐(0) 编辑
摘要: 一,问题描述 假设有 m 种面值不同的硬币,存储在 coinsValues数组中,现需要使用这些硬币来找钱,各种硬币的使用个数不限。 求对于给定的钱数N,我们最多有几种不同的找钱方式。硬币的顺序并不重要。 二,动态规划分析 为了更好的分析,先对该问题进行具体的定义:将用来找零的硬币的面值存储在一个数 阅读全文
posted @ 2016-06-13 10:25 大熊猫同学 阅读(8596) 评论(2) 推荐(0) 编辑
摘要: 一,问题描述 给定一组硬币数,找出一组最少的硬币数,来找换零钱N。 比如,可用来找零的硬币为: 1、3、4 待找的钱数为 6。用两个面值为3的硬币找零,最少硬币数为2。而不是 4,1,1 因此,总结下该问题的特征:①硬币可重复多次使用。②在某些情况下,该问题可用贪心算法求解。具体可参考:某种 找换硬 阅读全文
posted @ 2016-06-12 21:38 大熊猫同学 阅读(23469) 评论(1) 推荐(2) 编辑
摘要: 之所以再写一篇Blog,是因为现实中很多问题都可以转化成“找换硬币”问题 和 “0-1”背包问题。因此,需要细细理解。 其次,在“参考资料”中汇总关于 贪心算法与动态规划的一些Blog及学习资料。 区别: 其实最大的区别就是:找换硬币问题中的 某类硬币 是可以多次选择的。而对于0-1背包问题,某物品 阅读全文
posted @ 2016-06-11 17:06 大熊猫同学 阅读(1961) 评论(0) 推荐(0) 编辑
摘要: 一,问题介绍 最近一直在看贪心算法的正确性证明(如何证明贪心算法获得的解一定是最优解),感觉“剪枝”技巧用得比较多。再看了下《算法导论》中贪心算法一章里面的一个练习 找换硬币问题。这个问题对于某些 面值的硬币 是有最优解的,故记录下其中的一些证明思路。 考虑用最少的硬币数 来找 n 分钱的问题,假设 阅读全文
posted @ 2016-06-11 16:46 大熊猫同学 阅读(13729) 评论(4) 推荐(0) 编辑
摘要: 一,部分背包问题介绍 首先介绍下0-1背包问题。假设一共有N件物品,第 i 件物品的价值为 Vi ,重量为Wi,一个小偷有一个最多只能装下重量为W的背包,他希望带走的物品越有价值越好,请问:他应该选择哪些物品? 0-1背包问题的特点是:对于某件(更适合的说法是:某类)物品,要么被带走(选择了它),要 阅读全文
posted @ 2016-06-11 15:45 大熊猫同学 阅读(18279) 评论(0) 推荐(0) 编辑
摘要: 这篇文章主要用来记录我对《算法导论》 贪心算法一章中的“活动选择问题”的动态规划求解和贪心算法求解 的思路和理解。 主要涉及到以下几个方面的内容: ①什么是活动选择问题 粗略提下,详细请参考《算法导论》 ②活动选择问题的DP(Dynamic programming)求解--DP求解问题的思路 ③活动 阅读全文
posted @ 2016-06-10 17:17 大熊猫同学 阅读(9440) 评论(1) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 32 下一页