2011年3月18日

硬币找零问题_动态规划_算法与数据结构

摘要: 问题: 假设有n种面值不同的硬币,个个面值存于数组T[1:n]中,现在用这些硬币来找钱,各种硬币的使用个数不限; 求对于给定的钱数N,最少可以由几枚硬币组成,并输出硬币序列。 分析: 假设对于i = 1...N-1, 所需最少的硬币数Count(i) 已知, 那么对于N,所需的硬币数为Min( Count(i) + Count(N-i)) , i=1...N-1; 于是一个直观的方法是用递归计算。... 阅读全文

posted @ 2011-03-18 21:13 追求卓越 挑战极限 阅读(5893) 评论(0) 推荐(0) 编辑

2011年3月17日

逆序数_python_算法与数据结构

摘要: 问题描述 设A[1..n]是一个包含n个不同数的数组。如果在i<j的情况下,有A[i]>A[j],则(i, j)就称为A中的一个逆序对(inversion)。给出一个算法,它能用Θ(nlgn)的最坏运行时间,确定n个元素的任何排列中逆序对的数目。 算法思想 算法实现类似于合并排序,但需要额外处理逆序数的计数。因此,逆序数的计算相当于合并排序的副产品。在下面的代码中将global num num ... 阅读全文

posted @ 2011-03-17 11:21 追求卓越 挑战极限 阅读(2641) 评论(0) 推荐(0) 编辑

2011年3月16日

2n个数的中位数问题_python_算法与数据结构

摘要: 问题 :对于两个长度均为n的已排序的序列,确定这两个序列的2n个元素的中位数。 解决此问题的算法思想:设两个长度为n的数列分别为x[ 0 : n -1]和y[ 0 : n -1],分别找出这两个数列的中位数x[i]和y[ j ],二者进行比较,根据比较结果可以在每个数列中减少一半的搜索范围,然后再分别取两个子数列的中位数再比较,再减少搜索范围,继续下去直到找到最后结果。采用分治法来做,时间复杂度:... 阅读全文

posted @ 2011-03-16 23:32 追求卓越 挑战极限 阅读(1311) 评论(2) 推荐(0) 编辑

2011年3月11日

最长公共子序列和最长子字符串_python_算法与数据结构

摘要: 1. 动态规划与分治法: 分治法很容易划分子问题,子问题与子问题之间彼此独立,合并子问题的解很容易得到问题的解。一般采用递归来实现子问题的划分与合并这个思想。常见的问题如前面所讲的快速排序,归并排序等问题。 动态规划解决的问题能够分为一系列的小问题,综合子问题的解推导出大问题的解,问题求解耗时会按问题规模呈幂级数增加。为了节约重复求相同子问题的时间,引入一个数组,不管它们是否对最终解有用,把所有子... 阅读全文

posted @ 2011-03-11 16:31 追求卓越 挑战极限 阅读(4405) 评论(2) 推荐(0) 编辑

2011年3月7日

排序算法_JavaPython_数据结构与算法

摘要: 常见的排序算法有选择排序,冒泡排序,快速排序,归并排序,Hash排序等,这里面就快速排序,归并排序和堆排序进行讨论。其中堆排序是各大热门公司机试的热门题目。最近在学习python,我原来是喜欢java的,用过一段时间的perl,感觉perl实在是太晦涩了,高度利用了语言符号。Python代码可读性很强,如同一篇洋洋洒洒的散文。废话不多说,直接上代码供大家参考。1.归并排序。 归并排序,稳定的排序算法。下面给出Java代码和Python代码(ChenxofHit@gmail.com):Java代码:package chenx.sorting;public class MergeSort imp. 阅读全文

posted @ 2011-03-07 20:59 追求卓越 挑战极限 阅读(439) 评论(0) 推荐(0) 编辑

2011年2月28日

直方图和直方图均衡的Matlab完整程序(数字图像处理)

摘要: 一、 实验目的 掌握基本的图象增强方法,观察图象增强的效果,加深对灰度直方图及直方图均衡化的理解,掌握直方图均衡化方法。 二、实验内容 将一张彩色图片转换成灰色图片,画灰度直方图和均衡化后的直方图,并将灰度图和均衡化后的图片对比。 三、实验原理 灰度直方图是将数字图像中的所有像素,按照灰度值的大小,统计其所出现的频度。通常,灰度直方图的横坐标表示灰度值,纵坐标为像素个数,也可以采用某一灰度值的... 阅读全文

posted @ 2011-02-28 14:01 追求卓越 挑战极限 阅读(17780) 评论(1) 推荐(0) 编辑

2010年9月18日

霍夫变换(Hough Transform)

摘要: 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法。最基本的霍夫变换是从黑白图像中检测直线(线段)。我们先看这样一个问题:设已知一黑白图像上画了一条直线,要求出这条直线所在的位置。我们知道,直线的方程可以用y=k*x+b 来表示,其中k和b是参数,分别是斜率和截距。过某一点(x0,y0)的所有直线的参数都会满足方程y0=kx0+b。即点(x0,y0)确定了一族直线... 阅读全文

posted @ 2010-09-18 15:48 追求卓越 挑战极限 阅读(578) 评论(0) 推荐(0) 编辑

导航