2013SOHU技术中心新生训练营技术笔试题

Author:江南烟雨

E-Mail:xiajunhust@gmail.com


如违反SOHU版权请邮件联系,本人会删除。


参考答案如有错误,还请指出。欢迎来信交流!


一、不定项选择题

1、HTTP状态码500代表什么含义(C)

A、请求资源未在服务器上发现

B、请求成功,相应的响应头或数据包丢失

C、服务器错误

D、返回时间500ms

注解:

HTTP状态码:

500 :Internal Server Error服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。一般来说,这个问题都会在服务器的程序码出错时出现。

404: Not Found请求失败,请求所希望得到的资源未被在服务器上发现。

2、下面那些不是链表的特点(B)

A、插入不需要移动

B、快速随即访问一个节点

C、所需存储空间与线性表长度成正比

D、不用预估计存储大小

3、向一个栈找push下列元素,ABCDE,其pop可能的顺序不正确的是(D)

A、EDCBA

B、DECBA

C、ABCDE

D、DCEAB

4、下面哪些不属于面向对象的特征的是(D)

A、继承

B、抽象

C、封装

D、反射

5、mysql数据表有三个字段A、B、C,建立联合索引ABC,查询一下字段不需要联合索引的是(D)

A、AB

B、AC

C、BC

D、C

6、TCP/UDP下面正确的是(B)

A、both TCP and UDP provide reliability service

B、TCP provide connection-oriented services

C、TCP cannot provide flow control

D、Both TCP and UDP provide retransmission services

注解:UDP是没有保障的。

7、给出下面java代码,

Class Test{

private int a;

public static void fun(){…}

}

如何使成员变量a被函数fun()直接访问?(B)

A、将private int a改成protected int a

B、 将private int a改成static int a

C、 将private int a改成public  int a

D、将private int a改成nt a

8、产生死锁的四个必要条件是:互斥、(A)、循环等待和不可强占。

A、请求与保持

B、保持阻塞

C、请求与阻塞

D、独立执行

9、下列属于稳定的排序算法的是(A)

A、插入排序

B、快速排序

C、堆排序

D、选择排序

10、下面哪些项是一个典型的优势来实现分布式对象系统(ABCDE)

A、增加可扩展性

B、利用多个CPU

C、允许可伸缩性

D、数据/服务可靠性

E、实现了ACID特性

11、

#include <stdio.h>

int main(){

int s;

scanf(“%d”,&s);

while(s >0)

{

Switch(s)

{

case 1:printf(“%d”,s+5);

case 2:printf(“%d”,s+4);break;

case 3:printf(“%d”,s+3);

default: printf(“%d”,s+2);break;

}

scanf(“%d”,&s);

}

}

这段代码输入1 2 3 4 5 0回车,输出结果是(A)

A、6566567

B、65665672

C、66667

D、666672

12、unsigned short hash(unsigned short key){return (key>>4)%256;}

请问hash(16),hash(256)的值分别是(A)

A、1,16

B、8,32

C、4,16

D、1,32

13、设fop已定义,执行语句fop=fopen(“file”,”w”);后,以下针对文本file进行操作正确的是(D)

A、写操作结束后可以从头开始读

B、可以在原有内容后追加写

C、可以随意读和写

D、只能写不能读

14、linux的cron后台常驻程序(daemon)用于(D)

A、负责文件在网络找的共享

B、管理打印子系统

C、跟踪管理系统信息和错误

D、管理系统日常任务的调度

15、一下数据结构找不属于线性数据结构的是(C)

A、队列

B、线性表

C、二叉树

D、栈

注解:

线性结构中的数据元素之间是一种线性关系,数据元素一个接一个地排列。

常用的线性结构有:线性表,栈,队列,循环队列,数组。线性表中包括顺序表、链表等。

数据结构分类:

16、SQL语言是什么语言(C)

A、层次数据库

B、网络数据库

C、关系数据库

D、非数据库

17、设一棵二叉树找有3个叶子节点,有8个度为1的节点,则树中总得节点数为(B)

A、12

B、13

C、14

D、15

注解:

可以推导得出度为2的节点=叶子节点数-1.

18、下面有关测试原则的说法的说法不正确的是(BCD)

A、测试用例应由测试的输入数据和语句的输出结果两部分组成

B、测试用例可自选合理的输入数据

C、程序最好由编写该程序的程序员自己来测试

D、使用测试用例进行测试是为了检查程序员是否做错了他该做的事情

19、属于网络层协议的是(B)

A、TCP

B、IP

C、UDP

D、FTP

注解:

各层:协议

互联网层:IP

传输层:TCP、UDP

应用层:TELNET、FTP、SMTP、WWW等

20、下列编码中汉字一般占用3个字节的是(B)

A、GBK

B、UTF-8

C、ASCII

D、Unicode

注解:GBK:汉字占2字节。Unicode:2字节。无论是ASCII码还是EBCDIC码,都无法对拥有几万个的汉字进行编码。

二、填空题

1、在linux下,填写完成如下操作的命令。

查看java进程数(ps | grep java)

查看磁盘空间(df)

2、栈操作的原则(先入后出)

队列操作的原因是(先入先出)

3、线程的几种基本状态(就绪、阻塞和运行)

4、对一批编号为1-100的全部或开关朝上(开)的灯进行一下操作,凡是1的倍数的朝反方向拨一次,全部是2的倍数的又拨一次,3的倍数的反方向又拨一次。。。最后开挂不能熄灭的是(平方数)。

注解:拨开关的次数必须满足一个条件:约数的个数是奇数个。

5、若某二叉树的前序遍历访问顺序是abdgcefi,中序顺序是dgbaecif。那么后续遍历访问顺序是(gdbeifca)

三、简答题

 

1、介绍一下设计模式的工厂模式和单例模式,并实现一个单例模式。

这个google搜索一大堆。

2、快速排序法事应用最广泛的排序算法之一,最佳情况下时间复杂度是O(nlogn)。但是最坏情况下可能达到O(n^2)。说明快速排序达到最坏情况的原因。并提出改善方案并实现之。

答:出现坏情况的原因是每次选定枢轴进行划分之后所得的两部分不均衡,导致直到有序所需的划分次数很大。

改善方案:

改变枢轴的选取方法。

每次随机选择一个枢轴进行划分。

代码(C++):

#include <iostream>
#include <ctime>//time
#include <cstdlib>//rand
#include <algorithm>//swapusing namespace std;//划分-普通版本
template <class KeyType>
int partition(KeyType *a,int low,int high)
{//int pivotKey = *(a + high);//int i = low;//int j = high - 1;//while(i < j)//{//     while(i < j && pivotKey > *(a + i))//            ++i;//     while(i < j && pivotKey < *(a + j))//            --j;//     if(i < j)//            swap(*(a + i),*(a + j));//}将枢轴放到正确的位置//if(*(a + i) > *(a + high))//     swap(*(a + i),*(a + high));//版本2int pivotKey = *(a + low);while(low < high){while(low < high && *(a + high) > pivotKey)--high;*(a + low) = *(a + high);while(low < high && *(a + low) < pivotKey)++low;*(a + high) = *(a + low);}*(a + low) = pivotKey;//return i;return low;
}//划分-随机化版本
template <class KeyType>
int partitionRandomized(KeyType *a,int low,int high)
{//随机选取一个数作为枢轴//随机生成[low,high]中的一个数,作为枢轴的索引srand(time(NULL));int pivotKeyIndex = rand() % (high - low + 1) + low;//交换数组中最后一个元素与枢轴swap(*(a + high),*(a + pivotKeyIndex));return partition(a,low,high);
}//快排-普通版本
template <class KeyType>
void QuickSort(KeyType *a,int low,int high)
{if (low < high){int mid = partition(a,low,high);QuickSort(a,low,mid - 1);QuickSort(a,mid + 1,high);}
}//快排-随机化版本
template <class KeyType>
void QuickSortRandomize(KeyType *a,int low,int high)
{if (low < high){int mid = partitionRandomized(a,low,high);QuickSort(a,low,mid - 1);QuickSort(a,mid + 1,high);}
}int main()
{const int num = 7;int a[num] = {4,2,7,9,3,0,6};/*QuickSort(a,0,num - 1);*/QuickSortRandomize(a,0,num - 1);for(int i = 0;i < num;++i)cout << *(a + i) << " ";cout << endl;
}

3、说说session和cokies的区别。

【实习生笔试面试题】2013年搜狐SOHU实习生技术笔试题相关推荐

  1. 搜狐校园实习招聘笔试题

    2013-03-20 晚上  参加搜狐笔试 (主要部分,并不完整) 1 Http 500 含义 2 Session 和 Cookie 区别 3 工厂模式与单例模式是? 举例说明单例模式 4 linux ...

  2. [搜狐笔试] 搜狐2014产品经理笔试题

    一.选择题 1.   数据统计中PV的意义. 2.   Pinterest不具有哪些功能. 3.   最适合互联网产品原型工具. 4.   Web前端的编程语言有哪些. 二.填空题 1.   Andr ...

  3. 2015搜狐新浪校招笔试题-12个物体天平称3次

    有12个物体(鸡蛋.铁块等),形状.大小均相同,其中有11个物体重量相同,另外1个与其他不同,现在有一个天平,请你称3次找出不同的一个物体(不同的物体重量是比另外11个轻还是重未知). 解题: 将12 ...

  4. java搜狐笔试题_记录一次搜狐面试(包括笔试题)

    1.如何用一个div实现下图 css #demo{ width:120px; height: 120px; border:2px solid #333; border-radius: 20px; po ...

  5. 搜狐畅游2019校招笔试题-游戏开发工程师(java)

    题目描述: 一组无序的自然数集合,由0,1,2,,,,n的数字和一个的数字X组成,请从集合中找出这个重复的数字X. 例子: 输入:1 2 3 1 4 输出:1 public class Main {p ...

  6. 搜狐视频P2P技术揭秘 - 分享率控制篇

    搜狐视频P2P技术揭秘 - 分享率控制篇 1 业务决定控制逻辑 2 搜狐影音/搜狐视频 2.1 状态定义 2.2 输入事件 2.3 状态转换 2.4 转换逻辑 3 Flash 播放器/H5 播放器 在 ...

  7. 搜狐号自媒体搬运,搜狐号运营技术

    搜狐号搬运,搜狐号运营技术 1.开通收益 想要赚钱,首要就要开通收益,搜狐号开通收益的条件有: 入驻平台60天; 近60天内,帐号无违反平台相关规定的行为; 申请广告分成要求:上月阅读量2万 2.收益 ...

  8. 搜狐视频P2P技术揭秘 - 流程篇

    搜狐视频P2P技术揭秘 - 流程篇 1 协议 2 探测NAT类型 3 获取Proxy和RtmfpServer 4 登录Proxy和RtmfpServer 5 获取文件信息 6 获取Peer 7 打洞, ...

  9. 2022年最新软件测试工程师笔试真题及答案(搜狐、华为、蓝港在线)

    搜狐软件测试工程师笔试真题及答案 试题1.下列哪个覆盖的范围最广?条件.条件组合.语句.判定条件. 答案:条件组合. 试题2.Java Web应用的3层结构是什么? 答案:浏览器/中间层(Java A ...

最新文章

  1. CoreCLR源码探索(六) NullReferenceException是如何发生的
  2. 【高等数学】一元函数积分表
  3. 基于区块链的思考与创新应用实践
  4. bzoj-1079 着色方案(dp)
  5. Java动态代理二——CGLIB动态代理应用
  6. 苹果id无法登陆_科技来电:苹果为什么需要登录ID才能下载
  7. shopex手机版之触屏版,html5版,ShopEx手机触屏版V3.0重磅发布!优化用户界面,增强用户体验...
  8. amr文件服务器,如何打开amr文件?amr音频格式用什么打开?
  9. Java之自定义异常类、常用类String、StringBuilder、StringBuffer、时间类和枚举类的学习
  10. visio常用快捷键_Visio实用快捷键+比较不错的总结
  11. mysql集群数据一致性校验
  12. 基于Django框架的视频播放器设计
  13. 【软件工程】软工视频(一)概论
  14. c语言还是python-自学编程应该从c语言还是python入手?
  15. 伊犁哈萨克自治州谷歌高清卫星地图下载
  16. python_path
  17. Node.js是什么?Node.js简介
  18. mysql的gis_MySQL的GIS功能
  19. Mac OS下MAT(Memory Analyzer Tool)安装与启动
  20. 批量添加Exchange邮件联系人

热门文章

  1. linux那些事之page cache
  2. CUDA bank 及bank conflict
  3. 理解CNN中的特征图 feature map
  4. python实现将文件夹下文件随机移动指定数量到另一个文件夹下
  5. ubuntu18.04安装python3.8
  6. phpcmsV9 视频解决方案 - 第三方托管
  7. Creative主题电子科技企业类discuz模板
  8. matlab中结果为nan,这么简单的程序,为什么结果为NaN呢?
  9. delphi 提示class tparamlistbox not found_通达信主图K线变色波段提示指标公式
  10. html怎么控制进度条,HTML如何实现进度条?附源码