一,客观题

1. 下面哪种排序比较适合对基本有序的数组进行排序()

A 插入排序    B 快速排序   C 堆排序    D 归并排序

2. 下面哪种排序算法的平均时间复杂度最低()

A 快速排序    B 桶排序   C 希尔排序    D 堆排序

3. 假设一棵二叉树的后序遍历序列为BJDCFGEIHA,中序遍历序列为BCDJAFEGHI,则其前序遍历序列为()

A ACBDEGHJFI    B ACBDJHEFGI

C ACBDEGJHFI    D ABCDEFGHIJ

4. 一块矩形巧克力,初始时由N*M个小块组成。每一次你只能把一块巧克力掰成两个小矩形。最少需要几次才能把它们掰成N*M块1*1的小巧克力?

A N*M-1    B N*M

C logN*M    D logM*N

5. 以下程序的输出结果是()

1 int main()
2 {
3   int i, sum;
4   for(i=2;i<6;i++)
5   {
6     sum += i*(i-1);
7   }
8   printf("%d\n",sum);
9 }

A 40    B 70    C 无法确定    D 0

6. 以下程序的输出结果是

1 int main()
2 {
3   char a[]={20,19,18,17,16,15,14,13,12,11};
4   char* p=a+5;
5   printf("%d",*--p);
6 }

A 程序非法退出    B 16    C 15    D 14这个元素对应的内存地址

7. 假定a和b为int型变量,以下代码的输出为()

a=1;b=10;do{b -= a; a++;}while(b--<0);

A 9    B -2    C -1    D 8

8. 67的23次方与4取模的结果是()

A 3    B 2    C 1    D 0

9. 在区间[-1,1]随意取两个数,它们的和大于1的概率是()

A 1/2    B 1/4    C 1/8    D 1/16

10. 考虑一个双人游戏,游戏在一个圆桌上进行。每个游戏者都有足够多的硬币。他们需要在桌子上轮流放置硬币,每次必需且只能放置一枚硬币,要求硬币完全置于桌面内(不能有一部分悬在桌子外面),并且不能与原来放过的硬币重叠。谁没有地方放置新的硬币,谁就输了。游戏的先行者还是后行者有必胜策略?

A 先行者必胜    B 后行者必胜    C 有必胜策略,但和先行后行无关    D 不确定

二、主观题

1. 给定一个有序数组a,长度为len,和一个数X,判断A数组里面是否存在两个数,他们的和为X。bool judge(int *a, int len, int x),若存在则返回true,不存在则返回false。

2. 给定有n个数的数组a,其中超过一半的数为一个定值,在不进行排序、不开设额外数组的情况下,以最高效的算法找到这个数:int find(int* a, int n);

3.(略)

我的解答:

客观题

1. A 插入排序

2. B 桶排序

3. B 可以画出这棵树的结构,然后再求前序遍历

4. A 观察到,每掰一次,巧克力数量只能增加1。不存在这种掰法,使得掰一次多了两个或更多块巧克力。

5. C sum没有初始化,在VS 2010里面测试的结果是先报出来一个警告,警告sum未初始化;无视警告继续执行,输出一个绝对值特别大的负数。因此这道题目选择C。出于好奇,我又尝试将sum放在main函数外面,作为一个全局变量,则输出结果是40,也就是说这种情况下,sum不初始化,则系统默认初始化为0.

6. B 输出为16,也就是p先自减1,然后再输出;如果“--”放在p后面,改成printf("%d", *p--);则输出结果就是15了。

7. D 输出为8,这道题目说的不清楚,应该是在问b的值,即printf("%d", b);的输出

8. A 余数是3.考察二项分布,原题可以看成(68-1)^23.将这个式子二项展开,第i项为 C(i, 23) *68^i * (-1)^(23-i),其中i=0,1,2,3,...,23。所有含有68的项都可以被4整除,只有第0项,为-1.也就是说67的23次方结果等于一个能被四整除的数减一,那除以4肯定余数是3。

9. C

10. A 先行者第一步放在圆桌正中间一颗硬币,后面的选手不管放在什么位置,这个先行者总是放在其关于圆心对称的位置,则必胜。

主观题

1. 思路:将数列排序,然后从最小的开始,比如最小的数是k,要找的和为x,则在剩下的数列中用二分查找法找是否存在(x-k),不存在则检测下一个第二小的数,直到找到为止。排序复杂度 O(nlogn),后面这一步复杂度也是O(nlogn),总体复杂度就是O(nlogn)。代码等有时间了再写……

2. 思路:如果超过一半的数是定值,那么去掉两个不一样的数以后,那个定值还是超过一半,通过这种方法可以找到。复杂度是O(n)。代码等有时间了再写……

转载于:https://www.cnblogs.com/xuning/p/3332648.html

[实战演练]2014年人人公司应届生校招技术笔试题相关推荐

  1. 电信云2020校招-技术笔试题

    电信云的技术笔试是单选题 不定项选题 编程题 单选和不定项选会考得很基础,计算机网络相关那些,而且电信云主用的应该是java吧,有几道是java题,让我这种没搞java的表示无辜 编程题就非常简单,在 ...

  2. 应届生校招找工作完整流程总结

    应届生校招找工作完整流程总结 本博文为我借鉴学长们的经验贴而整理出来的. 1.校招和社招 公司招聘常分两种,社招和校招.社会招聘一般要求工作经验:校园招聘不是所有的公司都有,针对应届毕业生,通常正式入 ...

  3. 应届生校招行业选择,互联网or银行or国企or公务员?

    应届生校招行业选择,互联网or银行or国企or公务员? 1.薪资待遇 2.工作强度 3.工作地点 4.户口和买房 5.长期发展和稳定性 6.晋升和跳槽 7.人际关系 校招匆匆,很多人都没有做好充足的准 ...

  4. 腾讯2022应届生校招总包40W

    哈喽,大家好啊,我是Beyonce,最近逛知乎的时候发现一个很热的话题:「如何看待腾讯 2022 校招大厂薪资首发,白菜总包接近 40w ?」 应届生校招40W,再想到往年春节时候,腾讯的小伙伴各种奖 ...

  5. 应届生校招Java学习经验

    应届生校招Java研发岗需要学习哪些 一.编程语言 1.Java语言基础:面向对象的概念.数据类型.装箱/拆箱.值传递/引用传递.String 类.关键字(final.static.super.thi ...

  6. 小红书2020校招数据分析笔试题卷四 解析

    小红书2020校招数据分析笔试题卷四 解析 单选题 多选题 填空题 简答题 题目来自小红书2020校招数据分析笔试题卷四 单选题 如果在小红书商城中某一商户给一产品定价,如果按照全网最低价500元定价 ...

  7. 校招笔试C语言,校招c ++笔试题汇总

    ①链表反转 单向链表的反转是一个经常被问到的一个面试题,也是一个非常基础的问题, 最容易想到的方法遍历一遍链表,利用一个辅助指针,存储遍历过程中当前指针指向的下一个元素,然后将当前节点元素的指针反转后 ...

  8. 计算机校招软件测试笔试题,校招软件测试笔试题

    校招软件测试笔试题 1. 假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数 A: h(K)=K/N; B: h(K)=1; C: h(K)=K mod N; D: h(K)=(K+r ...

  9. 富士康计算机类笔试题,富士康2021校招技术类笔试题

    富士康2021校招技术类笔试题 发布时间:2021-03-02 富士康科技集团是台湾鸿海精密集团在大陆投资兴办的高新科技企业.下面就由第一范文网小编为大家介绍一下富士康20xx校招技术类笔试题的文章, ...

最新文章

  1. 手撸一个npm包,安利一下duiba-sprite
  2. VTK:网格之QuadricClustering
  3. 前端学习(2225):react之类定义组件
  4. 信息学奥赛一本通 1080:余数相同问题 2022.1.29 AC
  5. scatter python_Python scatter详解
  6. Android 替换字体的方式以及同时替换多种字体
  7. 移动开发-语音识别-调用讯飞平台提供的API
  8. IntelliJ IDEA学习总结(1)——IntelliJ IDEA 介绍
  9. APE到底比MP3文件“好听”多少
  10. webstorm注释写出的提示
  11. RedHat 7 更换 yum 源为 CentOS 或网易镜像源
  12. Android+8.0+微信表情,微信8.0表情为什么不动?微信8.0哪些表情有动画效果?
  13. 基于Struts2和hibernate的WebSocket聊天室的实现教程五:聊天机制
  14. 数据分析-kaggle泰坦尼克号生存率分析
  15. 强制使用ie浏览器使用最高版本
  16. 【springboot连接Tomcat报错】Error parsing HTTP request header Note: further occurrences of HTTP
  17. 用VB实现两幅图片半透明叠加
  18. Windows服务调用Quartz.net 实现消息调度
  19. 斐波那契回调线怎么画_交易者必备——斐波那契回调线的绝妙用法
  20. Ubuntu系统备份、恢复至其他电脑

热门文章

  1. python200行代码小游戏_200 行python 代码实现 2048 游戏
  2. mysql数据库主从同步的原理_mysql数据库主从同步复制原理
  3. git clone --recursive慢_Git使用之submodule
  4. php接口三结构,grape动态PHP结构(三)——API接口
  5. worknc的后处理如何安装_这些压缩空气后处理问题,大部分人都没有关注到
  6. Oracle/PLSQL Repeat Until Loop
  7. 什么是事件?JS中都有哪些事件?
  8. Java学习笔记1.1.3 搭建Java开发环境 - 编写并运行Java程序
  9. Python编程基础11:字典
  10. 【BZOJ4514】数字配对,费用流