题目:
在数轴上有n个区间,每个区间都是连续的整数区间。现在要在数轴上任取一堆元素,构成一个集合V,要求每个区间和V的交集至少有两个不同的元素。求V的最小的元素个数。
问题分析:
可以使用贪心算法,最终结果肯定是小于大于2×n的,如果两个集合之间有相同的元素,那么选相同的元素必然会使结果更小,当我们以e排序后,如果有相同的必然是最后的元素。所以贪心的策略就是如果一个区间最...
分类:
其他好文 时间:
2014-05-07 04:04:23
阅读次数:
294
Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。
最常用的就是多表关联查询,主要讲解下join、outer join和semi join的具体使用。
join是最简单的关联操作,两边关联只取交集。
outer join分为left outer join、rig...
分类:
其他好文 时间:
2014-05-06 15:01:38
阅读次数:
269
set集合函数主要用来去除重复:比如一个列表有多个重复值,可以用set搞掉>>>l=[1,2,3,4,5,4,3,21]>>>>>>l[1,2,3,4,5,4,3,21]>>>>>>>>>set(l)set([1,2,3,4,5,21])>>>set可以做交集,并集,差集set的增删改增:&..
分类:
编程语言 时间:
2014-05-03 20:49:16
阅读次数:
364
”基于用户的协同过滤算法“是推荐算法的一种,这类算法强调的是:把和你有相似爱好的其他的用户的物品推荐给你。
要实现该推荐算法,就需要计算和你有交集的用户,这就要用到物品到用户的反查表。
先举个例子说明下反查表:甲喜欢的物品有:A、B、C;乙喜欢的物品有:B、E、F;丙喜欢的物品有:A、J、K...
分类:
数据库 时间:
2014-05-02 13:37:25
阅读次数:
585
集合运算集合运算就是将两个或者多个结果集组合成为一个结果集。集合运算包括:?
INTERSECT(交集),返回两个查询共有的记录。? UNION ALL(并集),返回各个查询的所有记录,包括重复记录。?
UNION(并集),返回各个查询的所有记录,不包括重复记录。? MINUS(补集),返...
分类:
其他好文 时间:
2014-04-28 07:58:03
阅读次数:
364