- 博客(76)
- 资源 (3)
- 收藏
- 关注

原创 最大上升(下降)子序列 小节
1、Given a sequence of as many as 10,000 integers (0 < integer < 100,000), what is the maximum decreasing subsequence? Note that the subsequence does not have to be consecutive. (USACO 2.2)#includ
2013-09-16 10:55:02
890

原创 最新的一个面试的算法题目——一个完全背包问题
一个集合x有都不相同的n个元素,使用这个集合中的不定个数的元素,组成一个和为s的序列,求出所有符合的序列,元素可以重复使用,只要元素的个数相同不考虑顺序。比如集合是x={2,3,4,5,7}; n=5, s=12可以得出以下的序列:2 2 2 2 2 22 2 2 3 33 3 3 32 2 2 2 42 3 3 42 2 4 44 4 42 2 3 5
2013-08-20 17:29:40
789
原创 Hive 调优
目录改写SQL实现使用grouping sets代替union分解count(distinct)使用SQL-Hint 语法MAPJOIN HintSTREAMTABLEHive配置开关并行执行向量开关参考文章改写SQL实现使用grouping sets代替union-- 优化前SELECT s_age,s_sex,count(1) FROM...
2020-01-23 16:05:53
482
原创 HIVE执行计划(未完)
目录语法基本信息扩展信息依赖信息授权信息参考文章语法EXPLAIN [EXTENDED|CBO|AST|DEPENDENCY|AUTHORIZATION|LOCKS|VECTORIZATION|ANALYZE] queryAUTHORIZATION从 HIVE 0.14.0 通过HIVE-5961开始支持,VECTORIZATION从 Hive 2.3....
2020-01-22 18:40:37
605
原创 Hive 面试题总结
目录排序分组类JOIN类窗口函数类参考文章排序类1、有1亿个用户,存储在表users中,包含用户uid、用户年纪age、用户消费总金额total,其中以uid唯一标识1个用户,按照用户年龄从大到小排序,如果年龄相同则以消费总金额从小到大排序。这是1个全排序问题,首先预估总内存消耗大小,1亿[用户数]*(8B[uid]+4B[age]+8B[total])约等于2G,...
2020-01-21 15:38:24
1901
原创 Presto 常用函数
Presto 简要介绍presto是一个分布式的sql交互式查询引擎,基于内存的,可以达到hive查询效率的5到10倍,支持多种数据源的秒级查询。另外除了基于内存之外,还有优化如下:向量计算 动态编译执行计划 优化的ORC和Parquet Reader技术常用时间函数参考https://prestodb.io/docs/current/functions/datetime.htm...
2020-01-20 12:24:26
2156
原创 数据建模-未完
目录什么叫数据建模?为什么要数据建模?数据建模有哪些方法?什么叫数据建模?模型是对物理世界的刻画,从而更好地向他人表示,达到信息传递的目的。数据模型即是由一组符号、文本组成的集合,对业务数据建立适当的模型,从而更好地刻画业务系统中相关概念及其之间的关系,达到有效交流、沟通的目的。为什么要数据建模?概念建模、逻辑建模、物理建模的关系? 关系 主题(维度)...
2020-01-19 22:03:33
303
原创 Kylin 参数优化经验
目录优化前OOM执行时间过长优化前kylin执行构建如果因为OOM等原因运行失败后,调整配置参数,无需从头开始构建,kylin有个牛x的功能叫恢复执行,可以从失败的阶段开始重新执行,笔者之前不知道有这个功能,都是重头开始构建,执行到失败的步骤运行时间又很长,试错成本特别高。OOMBuild Cube with Spark阶段OOM设置参数kylin.en...
2020-01-16 19:51:52
1323
转载 hadoop 配置项的调优
dfs.block.size 决定HDFS文件block数量的多少(文件个数),它会间接的影响Job Tracker的调度和内存的占用(更影响内存的使用),mapred.map.tasks.speculative.execution=true mapred.reduce.tasks.speculative.execution=true这是两个推测式执行的配置项
2014-07-07 18:14:15
844
原创 矩阵链乘法 算法导论
[1003] 矩阵链乘法(http://ac.nbutoj.com/Problem/view.xhtml?id=1003)时间限制: 1000 ms 内存限制: 65535 K问题描述给定一个有n个矩阵的矩阵链A1A2A3…An,其中矩阵Ai(i=1,2,3…n)的维度为pi-1*pi。我们知道,两个维度分别为m*r和r*n的矩阵用一般的矩阵乘法相乘,所需的运算次数为m*r
2013-09-30 13:32:51
614
原创 实现返回大于A的最小“不重复数” 百度2014校招笔试题
1、不重复数的实现 如果一个数字十进制表达时,不存在连续两位相同,则称之为“不重复数”。例如,105、164和198都是“不重复数”,而11、100和122不是。下面用一个long类型( long类型数字A),实现返回大于A的最小“不重复数”。解答:如1223445,从左往右找到第1个重复的数,将后面重复的那个数加1,然后将重复数后面的数设置为0101...,
2013-09-29 16:41:39
819
原创 Fractions to Decimals && 精确表达浮点数
1、Fractions to Decimals(USACO 2.4)Write a program that will accept a fraction of the form N/D, where N is the numerator and D is the denominator and print the decimal representation. If the decimal
2013-09-18 17:15:37
768
原创 Riding the Fences (USACO 3.3) 无向图欧拉通路/回路
Riding the FencesFarmer John owns a large number of fences that must be repaired annually. He traverses the fences by riding a horse along each and every one of them (and nowhere else) and fixing
2013-08-24 12:29:38
794
原创 快速寻找满足条件的两个数(编程之美)
快速找出一个数组中的两个数,让此两个数之和等于一个给定的数。如:5 6 1 4 7 9 8 中找出两个数之和等于10的数编程之美之美P177有详细解答过程,思路是先排序(O(nlog(n)),然后保存两个指针beg、end,初始指向头部和尾部,如过*beg+*end==sum,则返回;如果*beg+*end>sum则向前移动end;*beg+*end扩展问题:1、快速找出一个数组中
2013-08-19 00:23:08
849
原创 HDU2150 Pipe
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2150判断线段是否相交的经典题目#include #include #include #define _DEBUG 0#define MAXN 30#define MAXK 100#define MAX(X,Y) (X)>(Y)?(X):(Y)#define MIN(
2013-07-09 13:55:57
760
原创 Sql 存储过程 及易迷糊知识
存储过程 一、简介: 存储过程(Stored Procedure), 是一组为了完成特定功能的SQL 语句,集经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数,如果该存储过程带有参数来执行它,在SQL Server 的系列版本中,存储过程分为两类:系统提供的存储过程和用户自定义存储过程。 系统SP,主要存储master 数据库中,并以sp_为前缀并
2013-06-30 15:00:43
442
转载 金刚坐飞机问题
转载于 http://jarfield.iteye.com/blog/1798180文章背景编程之美 4.1 “金刚坐飞机问题”的问题2,难度比问题1大很多。编程之美的官方解法,包括原理分析、概率公式、推导过程等,感觉阐述不够详细,没有完全读懂。搜索一下 “金刚坐飞机”,参考了几个很不错的分析,得到一个自己觉得比较完整的答案。 仔细审题 首先,仔细审题,有两
2013-06-27 16:48:17
843
转载 SQL数据库中"简单的"SELECT TOP—可能有你从未注意到的细节
转于:http://www.cnblogs.com/zhuisuo/archive/2010/12/23/1914790.html首先从博客园的Jerome Wong网友说起他提出了一个这样的问题本人写了好几年SQL语句了,从来没注意到这件事情。例如:数据表如下:ID EMPNO NAME AGE 1 26929
2013-06-27 14:55:43
692
转载 设计模式 应用场景
设计模式 应用场景http://hi.baidu.com/goodfriend_001/item/6d062d0c244a92f4a0103487追MM与设计模式创建型模式 1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡
2013-06-25 22:52:15
5010
转载 面向对象编程3大特性 7大原则
http://blog.163.com/wumingli456@126/blog/static/28896414201211121629525/一、面向对象的特性三个基本的特性:封装、继承与多态。1、封装面向对象编程核心思想这一就是就是将数据和对数据的操作封装在一起.通过抽象,即从具体的实例中抽取共同的性质形成一般的概念,比如类的概念.2、继承继承体现了一种
2013-06-25 15:55:02
3444
原创 绝妙的取样
算法F2,比算法S更有效率,但几乎同样简洁。算法F2initialize set S to empty for J := N - M + 1 to N do T := RandInt(1, J) if T is not in S then insert T in S else insert J in S
2013-06-24 17:15:59
488
原创 HDU 1392 Surround the Trees
http://acm.hdu.edu.cn/showproblem.php?pid=1392典型的凸包问题#include #include #include #define _DEBUG 1#define MAX_TREE 110typedef struct { double x,y;}Point;Point pts[MAX_TREE];Point
2013-06-24 14:10:35
549
转载 Git详解之一 Git起步
http://www.kuqin.com/managetool/20120824/329556.html起步本章介绍开始使用 Git 前的相关知识。我们会先了解一些版本控制工具的历史背景,然后试着让 Git 在你的系统上跑起来,直到最后配置好,可以正常开始开发工作。读完本章,你就会明白为什么 Git 会如此流行,为什么你应该立即开始使用它。1.1 关于版本控制什么是版本控制?我真的
2013-06-23 21:11:51
645
转载 SQL注入式攻击方式及防范措施
SQL注入式攻击方式及防范措施转载于 http://hi.baidu.com/xjzxjym/item/8efed742124798ad60d7b916谨以此文献给那些网站受害者。。。。。下面讲讲,如何网页挂马,假如你的大名和形象照出现在哪个人的网站,进行人身攻击,下面就用到了。1. 概述网页挂马这个话题想来大家并不陌生。为什么有这么多的网页上存在着木马去攻击普通用
2013-06-23 19:53:38
1730
转载 编程之美2.18——数组分割
转载于 http://blog.youkuaiyun.com/linyunzju/article/details/7729774问题:1. 有一个无序、元素个数为2n的正整数数组,要求:如何能把这个数组分割为两个子数组,子数组的元素个数不限,并使两个子数组之和最接近。2. 有一个无序、元素个数为2n的正整数数组,要求:如何能把这个数组分割为元素个数为n的两个数组,并使两个子数组之和最接近。
2013-06-16 11:46:37
499
原创 HDU1466 计算直线的交点数
1、n条直线互不平行且无三线共点的最多交点数max=1+2+……(n-1)=n(n-1)/22、一般统计的方法: 假设一共有n=a+b条直线 即n条直线分成2组,分别为a条和b条),则 总的交点数= a内的交点数 +b内的交点数 +a,b之间的交点数 3、我们来分析加入第N条直线的情况(这里以N=4为例):(分类方法:和第N条直线平行的在a组,其余在b组)
2013-06-08 19:53:25
564
转载 买票找零
一,问题:n个拿着1元,n个人拿着2元去买票。票价一元,且售票元只能用n个人购票的一元给2元的找零。问有几种排列方法 分析:卡特兰数方法 递推公式:F(2*n) =F(0)*F(2(n-1)) +F(1)*F(2(n-2))+……+F(2(n-1))*F(0)
2013-06-07 21:55:47
1260
转载 瓷砖覆盖地板
转载于 http://www.2cto.com/kf/201208/146894.html状态压缩动态规划 POJ 2411编程之美的课后题也有一个和整个题目一样的。(P269)题目这个题目的题意很容易理解,在一个N*M的格子里,我们现在有两种类型的 砖块,1 * 2 和 2 * 1,问一共有多少种方案,可以将整个N*M的空间都填满。最简单的例子就是下面的了:编程之美中题目
2013-06-05 17:35:25
659
转载 trie树--详解
转自 http://www.ahathinking.com/archives/14.html本文讨论一棵最简单的trie树,基于英文26个字母组成的字符串,讨论插入字符串、判断前缀是否存在、查找字符串等基本操作;至于trie树的删除单个节点实在是少见,故在此不做详解。Trie原理 Trie的核心思想是空间换时间。利用字符串的公共前缀来降低查询时间的开销以达到提高效率的目的。
2013-06-04 16:00:24
774
转载 整数的素因子分解
转自 http://www.cnblogs.com/luna-lovegood/archive/2012/07/15/2591982.html参考: 1.CLRS《算法导论》 2.http://www.csh.rit.edu/~pat/math/quickies/rho/#algorithm Pollard rho方法是随机算法,《算法导论》上说是启发式方法。期望的时间为
2013-06-03 16:08:15
873
转载 旋转卡壳初步
转载于 http://www.cnblogs.com/Booble/archive/2011/04/03/2004865.html一.简单枚举算法的不足上一次介绍了一个基本的求平面最远点对的算法即先求点集的凸包 然后枚举凸包上的点来求最远点集这是利用了凸包上的点相比 点集中的点 一般是很少的 平均情况很好 并且我们也能AC这个问题但是这是有局限性的 当凸包上的点达到O(N)的级
2013-06-03 11:31:37
788
原创 验证多边形是否为凸多边形
验证多边形是否为凸多边形 2108 Shape of HDU#include #define _DEBUG 0int crossMulti(int x0,int y0,int x1,int y1,int x2,int y2){//差积 return (x1-x0)*(y2-y0)-(x2-x0)*(y1-y0);}int main(){ int n,i;
2013-06-02 19:55:52
757
原创 计算多边形面积
计算多边形面积三角形的面积1、在解析几何里, △ABC的面积可以通过如下方法求得: 点坐标 => 边长 => 海伦公式 => 面积 海伦公式: S=sqrt[p(p-a)(p-b)(p-c)],其中p=(a+b+c)/2(p为三角形的半周长)2、 计算几何的方法 △ABC的面积就是“向量AB”和“向量AC”两个向
2013-06-02 19:46:30
1086
原创 UAACO Section 2.2 Party Lamps
灯1和灯7,2和8,3和9...是一样,输出时反复输出前6个的状态./*ID: hysfwjr1PROG: lampsLANG: C++*/#include #include #include #define _DEBUG 1#define MAX_L 6#define MAX_BUTTON 4#define delim (1<<MAX_L)
2013-06-01 11:10:27
463
原创 重建二叉树
浙大重建二叉树题 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1944#include #include #include #define _DEBUG 0#define MAX_C 26typedef struct Node{ struct Node* pLeft; struct Node* pR
2013-05-31 11:49:25
519
原创 hdu1086 You can Solve a Geometry Problem too
#include#include#include#include#define MAX 110#define max(X,Y) ((X)>=(Y)?(X):(Y))#define min(X,Y) ((X)<=(Y)?(X):(Y))typedef struct{ double x; double y;}Point;typedef struct
2013-05-30 23:12:48
507
转载 计算字符串的相似度--编程之美3.3
转载于 http://www.cnblogs.com/yujunyong/articles/2004724.html许多程序会大量使用字符串。对于不同的字符串,我们希望能够有办法判断其相似程序。我们定义一套操作方法来把两个不相同的字符串变得相同,具体的操作方法为: 1.修改一个字符(如把“a”替换为“b”); 2.增加一个字符(如把“abdd”变为“aebdd”); 3.删除
2013-05-30 21:04:33
556
原创 模线性方程
模线性方程 #include #include typedef struct _EUCLID_ITEM{ int d; int x; int y; /* _EUCLID_ITEM(int arg1,int arg2,int arg3){ d=arg1;x=arg2;y=arg3; }*/}EUCLID_ITEM;EUCLID_ITEM
2013-05-30 14:06:11
433
转载 稀疏图上的Johnson算法
转载于 http://blog.youkuaiyun.com/zhanghaodx082/article/details/8868977这个算法融合了Bellman-Ford算法和Dijkstra算法,并且Dijkstra算法本身还使用了优先级数组(可用二项堆或斐波那契堆实现,这里用的是二项堆实现),性能比较好,达到了O(V2lgV+VE)的时间复杂度,在无负权回路图中是最快的,比较有代表性,因此把我参考
2013-05-30 09:25:43
725
转载 二分查找需要注意的问题,以及在数据库内核中的实现
转于http://blog.youkuaiyun.com/overstack/article/details/8812159问题背景 今年的实习生招聘考试,我出了一道二分查找(Binary Search)的题目。题目大意如下: 给定一个升序排列的自然数数组,数组中包含重复数字,例如:[1,2,2,3,4,4,4,5,6,7,7]。问题:给定任意自然数,对数组进行二分查找
2013-05-29 15:48:53
1621
内容算法.mobi
2019-05-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人