从互联网巨头数据挖掘类招聘笔试题目看我们还差多少知识1从阿里数据分析师笔试看职业要求以下试题是来自阿里巴巴招募实习生的一次笔试题,从笔试题的几个要求我们一起来看看数据分析的职业要求。一、异常值是指什么?请列举1种识别连续型变量异常值的方法?异常值(Outlier)是指样本中的个别值,其数值明显偏离所属样本的其余观测值。在数理统计里一般是指一组观测值中与平均值的偏差超过两倍标准差的测定值。Grubbs’test(是以FrankE.Grubbs命名的),又叫maximumnormedresidualtest,是一种用于单变量数据集异常值识别的统计检测,它假定数据集来自正态分布的总体。未知总体标准差σ,在五种检验法中,优劣次序为:t检验法、格拉布斯检验法、峰度检验法、狄克逊检验法、偏度检验法。点评:考察的内容是统计学基础功底。二、什么是聚类分析?聚类算法有哪几种?请选择一种详细描述其计算原理和步骤。聚类分析(clusteranalysis)是一组将研究对象分为相对同质的群组(clusters)的统计分析技术。聚类分析也叫分类分析(classificationanalysis)或数值分类(numericaltaxonomy)。聚类与分类的不同在于,聚类所要求划分的类是未知的。聚类分析计算方法主要有:层次的方法(hierarchicalmethod)、划分方法(partitioningmethod)、基于密度的方法(density-basedmethod)、基于网格的方法(grid-basedmethod)、基于模型的方法(model-basedmethod)等。其中,前两种算法是利用统计学定义的距离进行度量。k-means算法的工作过程说明如下:首先从n个数据对象任意选择k个对象作为初始聚类中心;而对于所剩下其它对象,则根据它们与这些聚类中心的相似度(距离),分别将它们分配给与其最相似的(聚类中心所代表的)聚类;然后再计算每个所获新聚类的聚类中心(该聚类中所有对象的均值);不断重复这一过程直到标准测度函数开始收敛为止。一般都采用均方差(标准差)作为标准测度函数.k个聚类具有以下特点:各聚类本身尽可能的紧凑,而各聚类之间尽可能的分开。其流程如下:(1)从n个数据对象任意选择k个对象作为初始聚类中心;(2)根据每个聚类对象的均值(中心对象),计算每个对象与这些中心对象的距离;并根据最小距离重新对相应对象进行划分;(3)重新计算每个(有变化)聚类的均值(中心对象);(4)循环(2)、(3)直到每个聚类不再发生变化为止(标准测量函数收敛)。优点:本算法确定的K个划分到达平方误差最小。当聚类是密集的,且类与类之间区别明显时,效果较好。对于处理大数据集,这个算法是相对可伸缩和高效的,计算的复杂度为O(NKt),其中N是数据对象的数目,t是迭代的次数。一般来说,KN,tN。缺点:1.K是事先给定的,但非常难以选定;2.初始聚类中心的选择对聚类结果有较大的影响。点评:考察的内容是常用数据分析方法,做数据分析一定要理解数据分析算法、应用场景、使用过程、以及优缺点。三、根据要求写出SQL表A结构如下:Member_ID(用户的ID,字符型)Log_time(用户访问页面时间,日期型(只有一天的数据))URL(访问的页面地址,字符型)要求:提取出每个用户访问的第一个URL(按时间最早),形成一个新表(新表名为B,表结构和表A一致)createtableBasselectMember_ID,min(Log_time),URLfromAgroupbyMember_ID;点评:SQL语句,简单的数据获取能力,包括表查询、关联、汇总、函数等。四、销售数据分析以下是一家B2C电子商务网站的一周销售数据,该网站主要用户群是办公室女性,销售额主要集中在5种产品上,如果你是这家公司的分析师,a)从数据中,你看到了什么问题?你觉得背后的原因是什么?b)如果你的老板要求你提出一个运营改进计划,你会怎么做?表如下:一组每天某网站的销售数据a)从这一周的数据可以看出,周末的销售额明显偏低。这其中的原因,可以从两个角度来看:站在消费者的角度,周末可能不用上班,因而也没有购买该产品的欲望;站在产品的角度来看,该产品不能在周末的时候引起消费者足够的注意力。b)针对该问题背后的两方面原因,我的运营改进计划也分两方面:一是,针对消费者周末没有购买欲望的心理,进行引导提醒消费者周末就应该准备好该产品;二是,通过该产品的一些类似于打折促销等活动来提升该产品在周末的人气和购买力。点评:数据解读能力,获取数据是基本功,仅仅有数据获取能力是不够的,其次是对数据的解读能力。五、用户调研某公司针对A、B、C三类客户,提出了一种统一的改进计划,用于提升客户的周消费次数,需要你来制定一个事前试验方案,来支持决策,请你思考下列问题:a)试验需要为决策提供什么样的信息?c)按照上述目的,请写出你的数据抽样方法、需要采集的数据指标项,以及你选择的统计方法。a)试验要能证明该改进计划能显著提升A、B、C三类客户的周消费次数。b)根据三类客户的数量,采用分层比例抽样;需要采集的数据指标项有:客户类别,改进计划前周消费次数,改进计划后周消费次数;选用统计方法为:分别针对A、B、C三类客户,进行改进前和后的周消费次数的,两独立样本T-检验(two-samplet-test)。点评:业务理解能力和数据分析思路,这是数据分析的核心竞争力。综上所述:一个合格的数据分析应该具备统计学基础知识、数据分析方法、数据获取、数据解读和业务理解、数据分析思想几个方面能力,即将成为数据分析师的亲们,你们准备好了吗?2从腾讯(数据挖掘方向)笔试题目看技术储备笔试内容:1.历:已知中序遍历顺序以及前序遍历顺序,求后序遍历顺序2.SQL语句:找出QQset中最小的QQ号码3.encodeURI&URL传播的转义结果4.36辆车,6条跑道,无计时器,最少几次比赛可以选出前三5.Windows/Linux下判断远程地址为某主机监听的某端口是都开放的命令是?6.html网站cookie7.cookie功能8.哈希冲突9.哪些http方法对于服务端和用户是安全的10.二维数组内存地址计算11.附加题:推导线性最小二乘法过程12.附加题:概率计算(这个相当简单啦)13.模型过拟合与哪些因素有关,写出理由3从百度(数据挖掘工程师)笔试题目看技术储备一.简答题1.new和malloc的区别。2.hash冲突是指什么?怎么解决?给两种方法,写出过程和优缺点。3.命中的概率是0.25,若要至少命中一次的概率不小于0.75,则至少需要几次?二.算法设计题1.用C/C++写一个归并排序。数据结构为structNode{intv;Node*next};接口为Node*merge_sort(Node*);2.设计S型层次遍历树的算法,比如根节点是第一层,第二层从左至右遍历,第三层从右至左遍历,第四层再从左至右遍历,以此类推。举例:应依次输出123654789。3.一个url文件,每行是一个url地址,可能有重复。(1)统计每个url的频次,设计函数实现实现。(2)设有10亿url,平均长度是20,现在机器有8G内存,怎么处理,写出思路。三.系统设计题自然语言处理中的中文分词问题,前向最大匹配算法(FMM)。注:题目举例说明了FMM的基本思想。(1)设计字典的数据结构structdictnote。(2)用C/C++实现FMM,可选接口为intFMM(vectoriLetters,dictnode*iRoot,vector*oResults);其中iLetters为待分词的句子,比如{“小”,“明”,“今”,“天”,“买”,“了”,“i”,“p”,“o”,“n”,“e”,“6”},iRoot是字典,oResults保存输出结果,即分词的位置。也可以自己设计接口。(3)收集了一些手机品牌的字典,如{iphone,诺基亚}。现在要求查找包含这些手机品牌的网页,比如包含iphone6,诺基亚9973等。怎么修改FMM实现这个功能,可以写伪代码。4从搜狐(数据挖掘算法工程师)笔试题目看技术储备笔试1,类的继承2,资源互斥下的死锁3,一维数组,元素为指针,指针指向一个参数为Int,返回值为int的函数4,进程间的通信方式5,Const标志符常量一定要?6,String的普通构造函数,拷贝构造函数,赋值函数,析构函数7,Strcpy函数8,N个不同数的全排列,打印所有全排列9,Sizeof(charname[]=”hello”)10,继承的转换(子类可以转换成基类,基类不能转换成子类,多继承下同一子类的基类间不能相互转换)5从网易(数据挖掘研究员)笔试题目看技术储备笔试1,字符串匹配的算法复杂度(主串N,字串M)N+M2,排序算法的稳定性(快速排序为非稳定)3,平衡二叉树的插入4,20个亿整数的两个集合a与b,求a与b的交集,内存为4Gb5,在N个无序数中找K个最小值6,页面文件的逻辑地址位(8个1024字放内32帧内存里)7,计算机网络各层应用连接8,哪一种模式不关心算法AbstractFactory:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。(使用得非常频繁。)Adapter:将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。Bridge:将抽象部分与它的实现部分分离,使它们都可以独立地变化。Builder:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。ChainofResponsibility:为解除请求的发送者和接收者之间耦合,而使多个对象都有机会处理这个请求。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它。Command:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可取消的操作。Composite:将对象组合成树形结构以表示“部分-整体”的层次结构。它使得客户对单个对象和复合对象的使用具有一致性。Decorator:动态地给一个对象添加一些额外的职责。就扩展功能而言,它比生成子类方式更为灵活。Facade:为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。FactoryMethod:定义一个用于创建对象的接口,让子类决定将哪一个类实例化。FactoryMethod使一个类的实例化延迟到其子类。Flyweight:运用共享技术有效地支持大量细粒度的对象。Interpreter:给定一个语言,定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子。Iterator:提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的内部表示。Mediator:用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。Memento:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到保存的状态。Observer:定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新。Prototype:用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象。Proxy:为其他对象提供一个代理以控制对这个对象的访问。Singleton:保证一个类仅有一个实例,并提供一个访问它的全局访问点。State:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它所属的类。Strategy:定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。本模式使得算法的变化可独立于使用它的客户。TemplateMethod:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。TemplateMethod使得子类可以不改变