
数据结构与算法
文章平均质量分 88
fesito
这个作者很懒,什么都没留下…
展开
-
凸包算法
二维凸包问题描述:二维凸包的寻找是计算几何学的经典问题之一。给定平面上的一些点,找出一个最小点集连成一个凸多边形,使得这若干个点皆在此多边形内或此多边形上,这个凸多边形就是给定点的二维凸包。凸包的鼻祖算法——“三硬币”算法(The Three-Coins Algorithm)。三硬币算法由斯卡兰斯奇(Sklansky)于 1972 年提出,我们可以用三个硬币来模拟这个算法。转载 2012-10-11 22:04:52 · 10471 阅读 · 1 评论 -
指尖检测测试(二)
接着上一篇《指尖检测(一)》讲,当用曲率的方式检测出候选指尖点后,我们需要踢出非指尖点,主要就是手指间的凹槽。从原理上分析,如果候选点集Pi(i=0,1,2....)按照一定方式排列,比如都按顺时针或者逆时针存储在一个数组中,那么向量(Pi-1,Pi)和(Pi,Pi+1)(说明,这里向量表示不是这样的,因为这上面编辑公式不太方便就用这种方式表示了,大家理解就行) 的叉乘正负性不同也就是方向不同,通原创 2012-10-12 10:54:22 · 4949 阅读 · 3 评论 -
2012IT公司校园招聘笔试面试题
现在对参加过的一些公司的笔试、面试进行简答的整理和总结,以供大家参考。面试中常问的非技术类问题:1.简单介绍一下你自己。2.对自己做个评价,优点、缺点。3.自己做过的项目,详细介绍一下。4.实习经历,在实习过程中遇到哪些问题,如何解决的?5.你对公司有什么问题要问吗(对公司有什么要了解的)?技术类的问题主要就看对技转载 2012-11-26 19:58:18 · 2190 阅读 · 0 评论 -
各大公司数据结构与算法面试题解答(一)
还有一年就要找工作了,从现在开始找些公司的数据结构和算法的题来做一做,不定时贴出笔试面试题代码。1.创新工场:求一个数组的最长递减子序列比如{9,4,3,2,5,4,3,2}的最长递减子序列为{9,5,4,3,2}算法描述:1. 对原序列进行递减排序(选择快速排序法);2. 删掉重复数字;3. 得到子序列。C++源代码:#i原创 2012-11-19 21:19:21 · 19939 阅读 · 0 评论 -
各大公司数据结构与算法面试题解答(二)
6寻找迷宫的一条出路,1代表障碍,0代表通。算法描述:这里可以使用几种方法,我知道的有使用《数据结构》上“穷举求解”的方法,还有就是使用遗传算法寻找最优路径。这里我先简单描述下“穷举求解”,然后再做遗传算法的方式。1 问题中要涉及走过路径的回溯,因为栈是先进后出,所以利于回溯,选择栈来存储走过路径2 每一步有四个方向可以走,每到一步依次判断每一个方向,只要判断到某个方向可走就选择这个方向前进。3原创 2012-11-25 10:58:25 · 3545 阅读 · 0 评论 -
Mean shift和Cam shift算法原理和实现
一、Mean shift在讨论Mean Shift算法之前,首先讨论在2D概率分布图像中,如何计算某个区域的重心(Mass Center)的问题,重心可以通过以下公式来计算:1.计算区域内0阶矩for(int i=0;ifor(int j=0;j M00+=I(i,j)2.区域内1阶矩:for(int i=0;ifor(int j=0;j{ M转载 2013-01-04 20:14:06 · 4971 阅读 · 2 评论 -
关于海量数据查找排序问题
问题:假设一个文件中有9亿条不重复的9位整数,现在要求对这个文件进行排序。 一般解题思路: 1、将数据导入到内存中 2、将数据进行排序 (比如插入排序、快速排序) 3、将排序好的数据存入文件 难题: 一个整数为4个字节 即使使用数组也需要900,000,000 * 4byte = 3.4G内存 对于32位系统,访问2G以上的内存非常困难,而且一般设备也没有这转载 2013-04-24 16:13:14 · 15337 阅读 · 0 评论 -
几种搜索引擎算法
1.引言 万维网WWW(World Wide Web)是一个巨大的,分布全球的信息服务中心,正在以飞快的速度扩展。1998年WWW上拥有约3.5亿个文档[14],每天增加约1百万的文档[6],不到9个月的时间文档总数就会翻一番[14]。WEB上的文档和传统的文档比较,有很多新的特点,它们是分布的,异构的,无结构或者半结构的,这就对传统信息检索技术提出了新的挑战。 传统的WEB搜索引转载 2014-10-08 09:06:50 · 15413 阅读 · 0 评论