问题描述主元素的定义为:数组中出现次数超过数组长度一半以上的元素。输入一个无序数组,输出主元素(不能保证一定存在主元素)。解决思路经典的芯片测试问题:1. 首先将数组的首元素置为主元素候选,并附加一个计数器,初始为1;2. 遍历数组之后的元素,如果元素与候选元素相等,计数器加1;否则计数器减1;途中...
分类:
其他好文 时间:
2015-06-30 12:54:23
阅读次数:
121
选择算法
选择算法之选取最大数或最小数
选取最大数或最小数代码实现
选择算法之选取最大数和最小数
选取最大数和最小数代码实现
选取最大数和最小数代码优化
快速选择算法
快速选择算法分析
快速选择算法编码实现
快速选择算法代码优化
BFPRT选择算法
BFPRT选择算法主元选择
BFPRT选择算法性能分析
BFPRT选择算法代码实现注:本文中的所有代码都在这里选择算法选择算法就是用来解决在一堆数里面选...
分类:
编程语言 时间:
2015-05-24 15:46:54
阅读次数:
349
1.在数组中寻找出现次数超过一半的一个元素。2.在数组中寻找出现次数超过1/4的三个元素。【思路】1)常规做法:先将数组排序,时间O(nlogn);再遍历一次,统计每个元素出现的次数,得到题目要求。2)时间O(n)的做法:抵消法。对于第一题,每次抵消两个不同的数,剩下的数组主元素出现次数还是超过一半...
分类:
其他好文 时间:
2015-05-14 11:53:12
阅读次数:
121
快速排序传说中实际工作中应用最多的排序方法但是实际工作大多都是直接用库实现 不必自己造轮子但还是要了解其原理 方便应用quicksort 采用分治和递归的方法 分治的思修就是 先选定一个主元(pivot) 把比主元小的数放左边 比它大的数放右边本文中直接用第一个元素作为主元 这种方不是很好 实际还有...
分类:
其他好文 时间:
2015-05-12 22:21:52
阅读次数:
121
主元素(Majority Number)定义为数组中出现次数严格超过一半的数。找到这个数。要求使用O(1)的额外空间和O(n)的时间。
进阶1:如果数组中存在且只存在一个出现次数严格超过1/3的数,找到这个数。要求使用O(1)的额外空间和O(n)的时间。
进阶2:如果数组中存在且只存在一个出现次数严格超过1/k的数,找到这个数。要求使用O(k)的额外空间和O(n)的时间...
分类:
编程语言 时间:
2015-05-12 15:43:48
阅读次数:
130
寻找发帖“水王”题目是这样描述的:“水王”发帖的数目超过了所有帖子的一半,有各个帖子的作者ID,求这个水王的ID编程之美给出了两种巧妙的解法解法一:ID排序,那么ID列表中的N/2项即为要找的ID(还要排序,时间复杂度为O(NlogN))解法二:通过查找,每次从列表中除去两个不一样的ID,最后就可以...
分类:
其他好文 时间:
2015-05-07 10:21:20
阅读次数:
106
问题描述:设T[0:n-1]是n个元素的数组。对任一元素x,设S(x)={i|T[i]=x}。当|S(x)|>n/2时,称x为T的主元素。设计一个线性时间算法,确定T[0:n-1]是否有一个主元素。分析与解答:(1)基于分治法的线性期望时间求主元素算法中位数:数列排序后位于最中间的那个数,如果一个数...
分类:
编程语言 时间:
2015-05-07 10:07:14
阅读次数:
316
#include #include "..\CommonFiles\nrutil.h"#define TINY 1.0e-20;/* Crout算法** indx为输出向量,保存部分主元法而改变了行的行排列顺序** 输出向量d为±1,表示行交换次数为偶数还是为奇数*/void ludcmp(floa...
分类:
其他好文 时间:
2015-05-04 23:58:34
阅读次数:
263
快速排序之所以特别快,主要是由于非常精炼和高度优化的内部循环。像归并排序一样,快速排序也是一种分治的递归算法。数组S排序的基本算法由下列简单的四部组成:1.如果S中元素个数是0或1,则返回2.取S中任一元素v,称之为pivot(枢纽元,主元,基准)3.将S-{v}分成两个不想交的集合:S1={x∈S...
分类:
编程语言 时间:
2015-05-04 22:02:28
阅读次数:
141
假设矩阵A为m*n矩阵:
1.矩阵的列秩为主元所在列的数目rank(A),矩阵的零空间(即由Ax=0中所有x组成的空间)的秩为自由变量所在的列的数目n-rank(A)
2.矩阵的行秩等于列秩等于rank(A),矩阵的左零空间(即由A^Tx=0中所有x组成的空间,T表示转置)的秩为m-rank(A)
Notice:理解子空间即是线性组合...
分类:
其他好文 时间:
2015-04-10 17:54:50
阅读次数:
129