- 博客(9)
- 资源 (9)
- 收藏
- 关注
原创 0到n-1数组的排序
仅限 0到n-1这种情况。数组包含n个元素,只不过可能是乱序的,需要排序。 1.检测是否有序: 2.排序。拿起第一个元素k,将其放到p[k]位置,刚才的p[k]元素,也放到他相应的位置上。#include #include #include #include #include using namespace std;void sort_n(int *p,
2013-10-07 14:23:47 1610
原创 给定无序自然数数组,求最大连续自然数个数,时间复杂度为O(n)
方法1:排序,然后遍历,复杂度n lg n。方法2:并查集。用一个hash table记录数据是否出现,一个数组用于实现并查集。每次加入数据x,check 一下哈希table中x-1和x+1是否合法并存在,若存在则合并。最后遍历并查集数组,输出最大的等价类中元素的个数即可。方法3:类似2,用多个hash table:维持两个hash表tables: Start表,其中的条目
2013-10-07 11:00:51 1370
原创 找到int最左边的那个1
找到一个数最右边那个1很容易,就是x & -x,那么最左边那个1呢?【1】移位,逐个check,复杂度O(n),n是bit位数。【2】先把二进制模式翻转,再求最右边那个1,再翻转回去。复杂度O(lg N)。【3】得到最右边那个1,然后加到原数字上,这样可以消灭最右边的1,依次这么做,可以找到最左边的1,。这个方法比【1】快。实现了【2】【3】:#include#i
2013-10-05 23:26:41 2935
原创 求数组的逆序对个数【先离散化】
如果数组数据范围很大,而数据数量与之相比小很多,那么直接用输入数据来求逆序数就不值得了,可以进行离散化处理。处理要点是:1.用一个struct接受数据和一个自定义的序号no,排序时序号也就一起排序了。2.for遍历数组,no的位置写上i,就完成了离散化。例如:struct data{ int v; int no;};原始数据:100,10,1000,
2013-10-05 19:55:27 1328
原创 矩形交集和并集的面积-离散化
给出多个坐标表示的矩形,求其并集的面积和交集的面积。答案是离散化!很强。输入:210 10 20 2015 15 25 25.5310 10 20 2015 8 30 1517 13 25 250上代码。//离散化,x,y坐标分别按从小到大排序//离散化//1、首先分离出所有的横坐标和纵坐标分别按升序存入数组X[ ]和Y[ ]中.//2、
2013-10-05 17:16:48 3956 1
原创 树状数组 - POJ 3067 Japan
原题地址: http://poj.org/problem?id=3067树状数组的典型应用,典型输入如下:13 4 41 42 33 23 1表示有4条连线,如图:显然有5个交点。怎么求呢?对输入的数对(x,y)做排序,先按x升序排,x相等按y升序排,然后对y做树状数组,每次更新检查在他后面有多少个元素即可。代码:#include #i
2013-10-05 15:06:20 875
原创 求数组的逆序对个数
求数组的逆序对个数。如【3,5,1,15】,共有(3,1),(5,1)两对,逆序对个数为2;1.显然这个可以用穷举的方法去做,类似于直接选择排序,复杂度n^2.2.也可以用归并的方式去做,思路是:归并时,假设两个子数组已经排序,数组1在前,当前元素为x,数组2在后,当前元素为y,如果y#include#include#includeusing namespace std;v
2013-10-05 13:46:50 4993
原创 线段树简单应用 - 区间是否包含
给出n个输入,每个输入都是一个区间,这些区间有可能有重叠,形成区间集合S。现在再给一个区间x,问x是否在S中? 关键是如何合并区间得到S?可以用线段树做,空间O(N),查询时间为O(lg N)。线段树并不一定需要显式的一个“树”结构,不一定需要定义一个结构体。在这里用一个cover数组来模拟。 假设输入为: 1 2 3 4 7 9 11
2013-10-04 21:37:14 849
原创 字符串循环移位 编程之美3.1
给定两个字符串s1和s2,要求判定s2能否能被s1做循环移位得到的字符串包含。例如,s1=AABCD,s2=CDAA,返回true,给定s1=ABCD,s2=ACBD,返回false。思路1:找出所有循环移位,逐个进行字符串匹配。n*字符串匹配的复杂度。kmp可以做到线性,因此总的复杂度为n^2.思路2:s1复制一下,变成s1s1,如s1=ABCD,变成ABCDABCD,用它进行匹
2013-10-04 12:47:51 1724 1
相关向量机(RVM)论文6篇
2011-12-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人