搜狗2016研发工程师笔试题及答案
- 格式:pdf
- 大小:292.24 KB
- 文档页数:5
低剂量环葩素A在心脏移植中的应用作者:廖东山,李增棋,、哪个类是所有异常的基础类?cA. String E・E rror C・Thro wab 1 e D・Runt imeException2、设floatx=l, y=2, z=3,则表达式y+二z--/++x 的值是:A. B. 3 C. 4 D. 53、下列说法正确的是A .在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法4、根据下面的程序代码,哪些选项的值返回true?publicclass Square{long width;publi eSquare (long 1) {width=l;}publicsta ticvoidmain(Stringarg]]) {Squarea,b,c; a=newSqua re (42L); b=n ewSquare (42L );c=b;long s=42L;}}A . a==b; B. s==a; C. b—c; D . (s)equals ()是Object类的一个方法,指示某个其他对象是否与此对象"相等”。
由于类Object是类层次结构的根类。
所以它是每个类的超类。
所示每个类都可以重写equals () 方法,如String类。
如果没有重写新类的equal s (),则该方法和=操作符一样在两个变量指向同一对象时返回真,但是Java推荐的是使用equalsO方法来判断两个对象的内容是否一样。
考察"=”及方法"equalsO”的用法。
注意以下几点区别。
((引用类型比较引用;基本类型比较值。
((equals()方法只能比较引用类型,可比较引用及基本类型。
((用equals ()方法进行比较时,对类File、String、Date 及封装类来说,是比较类型及内容。
((用(=”进行比较时,符号两边的数据类型必须一致,否则编译出错。
设有两个事务T1,T2,其并发操作如下所示,下面评价正确的是()步骤 T1 T21 读A=1002 读A=1003.A=A+10写回4. A=A-10正确答案: D 你的答案: 空(错误)该操作不能重复读该操作不存在问题该操作读"脏"数据该操作丢失修改以下哪个不是与Mysql服务器相互作用的通讯协议()正确答案: B 你的答案: 空(错误)TCP/IPUDP共享内存SocketCPU和两台输入/输出设备(I1,I2)多道程序设计环境下,同时有三个作业J1,J2,J3进行,这三个作业使用CPU和输入/输出设备的顺序和时间如下所示:J1:I2(35ms);CPU(15ms);I1(35ms);CPU(15ms);I2(25ms)J2:I1(25ms);CPU(30ms);I2(35ms)J3:CPU(30ms);I1(25ms);CPU(15ms);I1(15ms);假定CPU,I1,I2都能并行工作,J1的优先级最高,J2次之,J3优先级最低,优先级高的作业可以抢占优先级低的作业的CPU,但不能抢占I1,I2,作业从J3开始到完成需要多少时间?正确答案: C 你的答案: 空(错误)13085140115文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权限,下列哪个命令是对的?正确答案: A 你的答案: 空(错误)chmod a+x g+w exer1chmod g+w exer1chmod 765 exer1chmod o+x exer1新建一个管理员用户admin,需要使用的参数()正确答案: A 你的答案: 空(错误)useradd -u 0 -o adminuseradd -g -0 adminuseradd -p -d adminuseradd -e -f admin设fp已定义,执行语句fp=fopen("file","w");后,以下针对文本文件file操作叙述的选项错误的是:正确答案: A C D 你的答案: 空(错误)可以随意读和写只能写不能读可以在原有内容后追加写写操作结束后可以从头开始读下面()组命令,将变量count值赋值为1正确答案: B 你的答案: 空(错误)DIM@count=1 count=1DECLARE @count SELECT @count=1DECLARE count SELECT count=1DIM @count SELECT @count=1下面重载乘法运算符的函数原型声明中正确的是:正确答案: A B D 你的答案: 空(错误)MyClass operator *(double ,MyClass);MyClass operator *(MyClass ,MyClass);MyClass operator *(double ,double);MyClass operator *(MyClass ,double);依次把结点的关键字的值为50,30,20,150,130,40,80,70,85,15的记录插入到初始化为空的平衡二叉排序树中,在插入过程中平衡树条件如被破坏,则进行必要的调整,得到的平衡二叉排序树的深度为()正确答案: C 你的答案: 空(错误)6543截止JDK1.8版本,java并发框架支持锁包括? 正确答案: A B D 你的答案: 空(错误)读写锁自旋锁X锁乐观锁排他锁下列哪个IP地址可以分配给一台计算机?正确答案: D 你的答案: 空(错误)256.1.3.4197.3.11.0199.5.8911.15.33.235。
搜狗2016研发⼯程师笔试题中有关于机器学习的⼏个判断题及解析1、SVM对噪声(如来⾃其他分布的噪声样本)鲁棒错拓展:SVM在解决⼩样本、⾮线性及⾼维模式识别中表现出许多特有的优势,并能够推⼴应⽤到函数拟合等其他机器学习问题中。
在机器学习中,⽀持向量机(Support Vector Machine,还⽀持⽮量⽹络)是与相关的学习算法有关的监督学习模型,可以分析数据,识别模式,⽤于分类和回归分析。
2、在AdaBoost算法中,所有被分错的样本的权重更新⽐例相同对AdaBoost算法中不同的训练集是通过调整每个样本对应的权重来实现的。
开始时,每个样本对应的权重是相同的,即其中 n 为样本个数,在此样本分布下训练出⼀弱分类器。
对于分类错误的样本,加⼤其对应的权重;⽽对于分类正确的样本,降低其权重,这样分错的样本就被突显出来,从⽽得到⼀个新的样本分布。
在新的样本分布下,再次对样本进⾏训练,得到弱分类器。
依次类推,经过 T 次循环,得到 T 个弱分类器,把这 T 个弱分类器按⼀定的权重叠加(boost)起来,得到最终想要的强分类器。
AdaBoost算法的具体步骤如下:1. 给定训练样本集S,其中X和Y分别对应于正例样本和负例样本; T为训练的最⼤循环次数;2. 初始化样本权重为1/n ,即为训练样本的初始概率分布;3. 第⼀次迭代:(1) 训练样本的概率分布相当下,训练弱分类器;(2) 计算弱分类器的错误率;(3) 选取合适阈值,使得误差最⼩;(4) 更新样本权重;经T次循环后,得到T个弱分类器,按更新的权重叠加,最终得到的强分类器。
Adaboost算法是经过调整的Boosting算法,其能够对弱学习得到的弱分类器的错误进⾏适应性调整。
每⼀次迭代,都要对权重进⾏更新。
更新的规则是:减⼩弱分类器分类效果较好的数据的概率,增⼤弱分类器分类效果较差的数据的概率。
最终的分类器是个弱分类器的加权平均。
3、Boost和Bagging都是组合多个分类器投票的⽅法,⼆者均是根据单个分类器的正确率决定其权重错Boost和Bagging都是组合多个弱分类器投票的⽅法,但⼆者均是根据单个分类器的正确率决定其权重的说法错误Bagging与Boosting的区别:⼆者的主要区别是取样⽅式不同。
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==搜狗校招笔试题试卷分三卷,前两卷包含C/C++类,java类,数据结构类,windows类,web类这几类,第三卷是两道算法题。
我应聘的是java开发工程师(搜索引擎),要做java类,数据结构类和第三卷的这些题目。
下面就说说这三类题目:(1)java类(有填空题,选择题,一共10题)1.怎样的类可以作为HashMap的键2.class Parent{private String name;private Parent(){}}public class child extends Parent{private String department;String getValue(){return name;}public child(){}public static void main(String arg[]){Parent p = new Parent();}}问这一段代码哪一行会出错?3.考察3维数组:int[][][] x = new int[3][][];x[0] = new int[4][];x[1] = new int[2][];x[2] = new int[5][];for(int i=0;ifor(int j=0;jx[j]=new int[i+j+1];System.out.println();System.out.println(“size=”+x[j].length);}问这段代码会输出结果共多少行?4.判断关于事件监听机器的一些说法的正误5.问TreeSet,TreeMap,HashMap这几个类谁是基于谁的实现6.Java1.6GC对年轻代(young generation)采取的策略7.JDBC数据库存储过程要用哪个类8.java.nio包中的多路IO复用和非阻塞IO的核心类9.判断下列四种情况那些可以终止当前线程10.考察String.replace()和String.replaceAll()这两个函数的使用(2)数据结构类(有填空题,选择题,一共10题)1.给一种自定义的二叉树,求有201X个节点的二叉树的最小,最大高度2.A-Z表示1-26,AA,AB分别表示27,28,问ABCD表示什么?考察进制3.n个顶点m条边的连通图,问至少去掉多少条边才能变成树?4.已知二叉树的前序序列,中序序列,求后序序列5.向双向链表插入一个节点。
现在我们需要查出一些作弊的问答社区中的ID ,作弊有两种:1.A 回答了B 的问题,同时B 回答了A 的问题。
那么A 和B 都是作弊。
2.作弊ID 用户A 和作弊ID 用户B 同时回答了C 的问题,那么C 也是作弊。
已知每个用户的ID 是一串数字,一个问题可能有多个人回答。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include <iostream>#include <map>#include <set>#include <vector>using namespace std;/**利用map 和 set ,每个问题a 对应一个set b,之后对b 中的每个元素根据其key 值找到其对应的b',然后看a 是否在里面。
*因为是map 和set,不用排序,查找时间复杂度也低*刚提交,目前显示排名第一,,*/int main(){int N;while(cin>>N){map<int,set<int>> pairs;while(N--){int a,count,b;cin>>a>>count;set<int> bs;while(count--)2425262728293031323334353637383940414243444546474849{cin>>b;pairs[a].insert(b);}//pairs[a]=bs;}vector<pair<int,int>> all;set<int> res;for(map<int,set<int>>::iterator it=pairs.begin();it!=pairs.end();it++) {int a=it->first;set<int> b=it->second;for(set<int>::iterator i=b.begin();i!=b.end();i++){if(a!=*i&&pairs[*i].find(a)!=pairs[*i].end()){ all.push_back(pair<int,int>(a,*i));res.insert(a);res.insert(*i);}}}for(map<int,set<int>>::iterator it=pairs.begin();it!=pairs.end();it++) {int a=it->first;set<int> b=it->second;505152535455565758596061for(int i=0;i<all.size();i++)if(b.find(all[i].first)!=b.end()&&b.find(all[i].second)!=b.end())res.insert(a);}cout<<res.size()<<endl;for(set<int>::iterator it=res.begin();it!=res.end();it++){cout<<*it<<endl;}}return 0;}A[n,m]是一个n行m列的矩阵,a[i,j]表示A的第i行j列的元素,定义x[i,j]为A的第i行和第j列除了a[i,j]之外所有元素(共n+m-2个)的乘积,即x[i,j]=a[i,1]*a[i,2]*...*a[i,j-1]*...*a[i,m]*a[1,j]*a[2,j]...*a[i-1,j]*a[i+1,j]...*a[n,j],现输入非负整形的矩阵A[n,m],求MAX(x[i,j]),即所有的x[i,j]中的最大值。
搜狗 C++工程师笔试题搜狗xx C++工程师笔试题
快速排序在下面哪种情况下优势最明显()
A 数据有多个相同数值
B 数据基本有序
C数据基本无序
D 数据无任何相同数值
先思考一下再看答案吧!
因为总是会有人一看题目就看到答案了
这样就很影响自己的思考
既然这样
我们就思考一下再往下看
参考答案:C
快速排序属于内部排序;
快速排序的实现基于分治法,具体分为三个步骤。
假设待排序的序列为L[m..n]。
分解:序列L[m .. n]被划分成两个可能为空的子序列L[m .. pivot-1]和L[pivot+1 .. n],使L[m .. pivot-1]的每个元素均小于或等于L[pivot],同时L[pivot+1.. n]的'每个元素均大于
L[pivot]。
其中L[pivot]称为这一趟分割中的主元(也称为枢轴、支点)。
解决:通过递归调用快速排序,对子序列L[m .. pivot-1]和
L[pivot+1 .. r]排序。
合并:由于两个子序列是就地排序的,所以对它们的合并不需要操作,整个序列L[m .. n]已排好序。
快速排序每次将待排序数组分为两个部分,在理想状况下,每一次都将待排序数组划分成等长两个部分,则需要logn次划分。
而在最坏情况下,即数组已经有序或大致有序的情况下,每次划分只能减少一个元素,快速排序将不幸退化为冒泡排序,所以快速排序时间复杂度下界为O(nlogn),最坏情况为O(n^2)。
在实际应用中,快速排序的平均时间复杂度为O(nlogn)。
模板,内容仅供参考。
研发工程师面试笔试题参考研发工程师面试难吗?求职面试时,面试官一般都会问你一些问题,也可能是通过问卷的形式提问,怎么回答才是最好的呢?这里给大家分享一些研发工程师面试笔试题目,希望对大家有所帮助。
应用系统开发工程师试题一、填空题(每题2分,共30分)1、信令网分为三级结构,它们是(HSTP)、(LSTP)、(STP)。
2、在GPRS网络中,手机从(GGSN)获得IP地址。
3、GSM系统使用的频段,上行频段为(890MHZ-915MHZ)。
4、GSM中的信道分为物理信道和(逻辑信道)信道。
5、使用工具(browser)来观察中断向量表。
6、SQL 语言是一种非过程性语言,它可以(嵌入)在宿主语言中使用,也可以独立地交互式使用。
7、与二进制数100101.001101等值的十进制数是(37.203125),等值的十六进制数是(25.34)。
8、用来辅助软件开发、运行、维护、管理、支持等过程中的活动的软件称为软件开发工具,通常也称为(CASE)工具。
9、软件开发模型用于指导软件的开发。
演化模型是在快速开发一个(原型)的基础上,逐步演化成最终的软件。
10、一个完整的程序必须完成三个层次的过程,它们分别是编码、测试和(排错或纠错)。
11、一台计算机具有比较高的MTBF值,其含义是指(该计算机的可靠性比较高)。
12、在某应用软件的安装说明书中指出,该软件的运行环境是“Windows 98 SE”,这里的SE是指(第二版或SecondEdition)。
13、在软件质量特性中,(可靠性)是指在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性;(安全性)是指防止对程序及数据的非授权访问的能力。
14、计算机网络中对等实体间通信时必须遵循约定的标准协议。
不同的协议有不同的功能,如:(SNMP)用于网络管理。
15、在软件开发过程中常用图作为描述工具。
DFD就是面向数据流分析方法的描述工具。
在一套分层DFD中,如果某一张图中有N个加工(process),则这张图允许有(0~N)张子图。