声明: 现在发现每写一篇随笔,就要在前面添加些牢骚话,各位看客如果嫌烦,直接绕道吧。 近期重新拾起C语言,因为工作的需要。 图像这个行当,matlab可以作为测试,但是真正应用的话还得转成C,所以这就是我这段时间苦逼的开始。 因为需要用到多项式变换,其中的系数求解又牵涉到线性方程组和最小二乘...
分类:
其他好文 时间:
2015-04-01 17:18:32
阅读次数:
203
题外话 最近有些网友来信问我博客怎么不更新了,是不是不刷题了,真是惭愧啊,题还是在刷的,不过刷题的频率没以前高了,看完《算法导论》后感觉网上很多讨论的题目其实在导论中都已经有非常好的算法以及数学证明,只是照搬的话好像意义也不是很大,希望找到些有代表性的题目在更新,另外希望能接着前面的《穷举递归和回溯...
分类:
编程语言 时间:
2015-03-20 23:26:58
阅读次数:
224
特征脸Eigenfaces我们讲过,图像表示的问题是他的高维问题。二维灰度图像p*q大小,是一个m=qp维的向量空间,所以一个100*100像素大小的图像就是10,000维的图像空间。问题是,是不是所有的维数空间对我们来说都有用?我们可以做一个决定,如果数据有任何差异,我们可以通过寻找主元来知道主要...
分类:
编程语言 时间:
2015-03-14 19:51:42
阅读次数:
183
之前已经比较熟悉快排的基本思想了,其实现的方式也有很多种。下面我们罗列一些常见的实现方式:
版本一:算法导论上的单向扫描,选取最后一个元素作为主元
#include
using namespace std;
int partition(int data[], int low, int high)
{
int pivot = data[high]; // let the ...
分类:
编程语言 时间:
2015-02-24 18:46:40
阅读次数:
185
以下摘自网络 随机化快排:快速排序的最坏情况基于每次划分对主元的选择。基本的快速排序选取第一个元素作为主元。这样在数组已经有序的情况下,每次划分将得到最坏的结果。一种比较常见的优化方法是随机化算法,即随机选取一个元素作为主元。这种情况下虽然最坏情况仍然是O(n^2),但最坏情况不再依赖于输入数据,而...
分类:
编程语言 时间:
2015-02-10 10:33:02
阅读次数:
257
问题描述:
令a[1..n]是一个整数序列,a中的整数x如果在a中出现的次数多于n/2,那么x称为多数元素。
设计一个性能比较优异的算法求解这个问题,找出一个整数序列中的多数元素。当然多数元素要么不存在,要么就只有一个
算法描述:
解决这个问题有好多种方法,蛮力方法就是把序列中的每个元素和其他每个元素比较,并且对每个元素计数,如果某个元素的计数大于n/2,就可以判断它是多数元素,否...
分类:
其他好文 时间:
2015-02-06 18:56:31
阅读次数:
183
问题:当给定存在静态表(如数组)中的n个元素,如何快速找到其中位数、最小值、最大值、第i小的数?
首先想到的方法是先对数组元素进行排序,然后找到第i小的元素。这样是可行的,但比较排序最快也需要O(nlgn),能否在线性时间内解决呢。这就是随机的分治法—随机选择。
思想:利用随机划分(在快速排序中介绍过)找到主元r,这样就将小于等于r的元素放在了其左边,大于r的元素放在了其右边。这...
分类:
编程语言 时间:
2015-02-02 23:09:19
阅读次数:
213
原题地址寻找主元素非常巧妙的方法代码: 1 int majorityElement(vector &num) { 2 int candidate = 0; 3 int count = 0; 4 5 for (int i = 0; i < num.size(); i++)...
分类:
其他好文 时间:
2015-01-26 21:03:44
阅读次数:
143
做数据结构课设时候查的资料,主要是看求逆矩阵方面的知识的。 选主元的高斯-约当(Gauss-Jordan)消元法在很多地方都会用到,例如求一个矩阵的逆矩阵、解线性方程组(插一句:LM算法求解的一个步骤),等等。它的速度不是最快的,但是它非常稳定(来自网上的定义:一个计算方法,如果在使用此方法的计算过...
分类:
其他好文 时间:
2015-01-05 20:12:12
阅读次数:
260
问题描述:
在一个数组中找出第k小的数。
算法:
快速选择select算法。
策略:五分化中项的中项做pivot
复杂度:最坏情况下O(n)
对比:
1、RANDOMIZED-SELECT,以序列中随机选取一个元素作为主元,可达到线性期望时间O(N)的复杂度。
2、SELECT,快速选择算法,以序列中“五分化中项的中项”,或“中位数的中位数”作为主元(枢纽元),在最...
分类:
编程语言 时间:
2014-12-26 01:01:11
阅读次数:
745