兰亭集势笔试题

一.选择题:
1.下面程序的输出是 (C):

    char s[] = "lightinthebox";
    printf("%s%d",s+5,sizeof(s));
    A. lightinthbox13                   B. inthebox13
    C. inthebox14                       D. lightinthebox14

2.某请求被随机分配到四台机器进行处理,分配到每台机器的概率分别为:A15%,B20%,C30%,D35%,处理请求的失败概率分别为5%,4%,3%,2%。
  现在请求失败,问由C造成的概率最接近与(B):

    A. 26%     B.28%       C. 30%      D. 32%  
3. ping命令使用的协议是:(C)

    A.TCP      B.UDP       C.ICMP      D.DHCP

4. 数据库中建立索引常用的数据结构是(C)

    A. 链表    B.队列    C.树    D.数组

5.五个等概率的红球或者黑球连成环后,不存在两个相邻红球的概率是:(A)

    A. 11/32    B.9/16    C.13/32    D.11/16
6.设栈S和队列Q的初始状态为空,元素e1,e2,e3,e4,e5,e6一次压入栈S.   
    一个元素出站后即进入队列Q,如果出队列的顺序为e2,e4,e3,e6,e5,e1,则栈S的容量要求最小值为:(B)

    A.2      B.3      C.4      D.5

7.数据库查询中,假设在表table中的字段id 和 name设置了索引(id,name),那么下列查询中会用到该索引的是:(B)

    A. select * from table where id = 1;
    B. select * from table where id in(3,4) and name like '李%';
    C. select * from table where id = 3 and name like '%李'
    D. select * from table where type = 'test';   

8.已知一颗二叉树的前序遍历结果为ABCDEF,中序遍历结果为CBAEDF,则后序遍历的结果为:(A)

    A. CBEFDA     B.FEDCBA        C.CBEDFA         D.不定

9.下列排序算法中,占用辅助空间最多的是(D)

    A. 堆排序      B.快速排序      C.希尔排序       D.归并排序
10.从社会中随机地找出一些家庭,他们都有两个小孩(而且只有两个小孩),而且他们的小孩子中至少有一个孩子是男孩。
    则这些家庭中另一个孩子也是男孩的概率是(A)

    A.  1/2       B.1/3      C.1/4      D.1/5   
二.程序设计和算法
    1.有一个由大小写组成的字符串,现在要求对他进行修改,将其中的所有大写字母排在小写字母的前面(要求时间复杂度O(N),空间复杂度O(1)),大小写字母不要求保持原来的顺序。

    思路:双向扫描。交换
    2.最长回文串,给出一个字符串,求出其中的最长回文串和回文串的长度。

    思路:暴力搜索或者Trie树
    3.最大子段和。输入一个整型数组,其中有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组有一个和。
      例如输入的数组为1,-2,3,10,-4,7,2,-5,最大的子数组为3,10,-4,7,2输出该数组的和为18

     思路:简单DP.老题
    4.输入一组整数的集合,将所属集合完全相同的数字放入新的集合中。 例如:input1 = {2,1,3},input2 = {3,2,5,6,7},input3 = {2,4,6,7}, 则输出的结果为:{1},{2},{3},{4},{5},{6,7}

    思路:给每个集合一个唯一的质数,如分别为2,3,5 根据每个数所在的集合求出乘积,然后将乘积相同的数字合并即可。如:数字1在集合1中,乘积为2

数字2在集合1,2,3中,乘积为2*3*5 =30 ,依次类推

非计算机专业开发几道题目:大部分相同,除了几个选择题和一道大题目:

选择题3. 根据规律。第五个数是多少?3/2,    2/3, 5/12 ,3/10

A.5/6      B.8/15      C.7/30      D.8/35

选择题7.设R为实数集,函数f: R->R,f(x) = 2^x.则f是()

A.漫射函数                                      B.入射函数

C.双射函数                                      D.非入射非满射函数

程序设计题2:Imlement a function that rotates an array by anumber ofpositions,srite the function in[] rotateAraar(int[] input,int n);which rotates the input array by n positions,For example,the array[1,2,3,4,5,6]rotated by 2positions returns [5,6,1,2,3,4]

思路:数组旋转,经典的三次翻转法可以达到O(N)的时间复杂度

posted @ 2012-11-12 16:32  Mr.Rico  阅读(1185)  评论(0编辑  收藏  举报