2014年3月29-阿里巴巴线上笔试题-研发岗

将一个从大到小的数组,用以下排序方法排序成从小到大的,______最快。

插入排序

冒泡排序

快速排序

堆排序

18:36:37 

IP数据报头采用______字节序,在此字节序下从低地址到高地址0x1234的表示形式为______

big_endian, 0x12 0x34 0 0

little_endian0x34 0x12 0 0

big_endian, 0 0 0x12 0x34

little_endian0 0 0x34 0x12

18:39:03 

x86平台下,下面哪种运算速度最快    。

18:39:14 

某二叉树的先序遍历是12453,中序遍历是42513,那么其后续遍历是______

45231

42351

12345

54321

18:44:43 

先序遍历12453,中序遍历42513,那么后续遍历是____

45231

42351

12345

54321

18:44:52 

对于二分查找算法下面描述正确的是    。

只能用于数组

只能用于链表

只能在已经排序的数据上进行查找

最坏情况下时间复杂度是O(N*logN)

18:45:17 

下列哪种算法没有使用分治法的思想________

 

插入排序

二分查找

合并排序

快速排序

18:45:26 

有两个N*N的矩阵AB,想要在PC上按矩阵乘法基本算法编程实现计算A*B。假设N较大,本机内存也很大,可以存下AB和结果矩阵。那么,为了计算速度,AB在内存中应该如何存储(按行存指先存储第一行,再第二行,直到最后一行;按列存指先存储第一列,再第二列,直到最后一列)

A按行存,B按行存。

A按行存,B按列存。

 A按列存,B按行存。

A按列存,B按列存。

18:47:37 

某计算机的指令流水线由四个功能段组成,指令流经各功能段的时间(忽略各功能段之间的 缓存时间)分别是90ns80ns70ns60ns,则该计算机的CPU时钟周期至少是____

90ns

80ns

70ns

60ns

18:48:10 

标准unix环境下,一个拥有3个线程的进程调用fork产生的子进程中,其线程个数为______

1

2

3

4

18:48:18 

某二叉树有如下特性,每一个结点要么是叶子结点,要么有2个子树。如果有一个这样的树有m个叶子结点,则这棵树的总结点数是 ______

  

2m+1

2m-1

2(m-1)

2m

18:49:07 

下述描述中,正确的是____

char const * pointer表示pointer指向的内存区域的内容不能修改

const char *pointer表示pointer不能指向别的内存地址

char * const pointer 表示pointer指向的内存区域的内容不能修改

const char * const pointerC++语言中不合法

18:49:51 

设栈S初始状态为空。元素a,b,c,d,e,f依次通过栈S,若出栈的顺序为c,f,e,d,b,a,则栈S的容量至少应该为______ 

3

4

5

6

18:50:41 

你有一个3X3X3的立方体。你现在在正面左上的顶点,需要移动到对角线的背面右下的顶点中。每次移动不限距离,但只能从前至后、从左至右、从上至下运动,即不允许斜向或后退。有______种方法。

 

9

90

180

1680

18:51:04 

需要频繁的插入删除操作使用什么结构比较合适______

 

数组

队列

链表

18:51:19 

已知一个递归算法的算法复杂度计算公式为T(n)=T(n/2)+n,T(n)的算法复杂度为____

O(n)

O(logn)

O(n2)

O(nlogn)

18:52:34 

一个二进制网络通信协议的报文,包头定长,除了包头以外,可以携带长度和内容都不定的负载,设计报文格式时,可以用____方式,确保协议处理程序能够正确识别每一个报文。

在包头中第一个定长字段中写明报文全长

在包头中某个定长字段中写明负载负载长度

在报文头尾加固定长度的边界符

使用定长报文,如负载超长,则分片

18:56:50 

红黑树在处理过程中红黑节点会产生冲突,请问在下列操作中解决的冲突中,正确的是______

插入操作时,解决红黑冲突

删除操作时,解决黑黑冲突

插入操作时,解决红红冲突

删除操作时,解决黑黑冲突

19:00:26 

下面属性中,是事物(Transaction)属性的有____

原子性(Atomic)

并发性(Concurrency)

一致性(Consistent)

隔离性(Isolated)

持久性(Durable)

19:00:32 

正则表达式 2[0-4]d|25[0-5]|[01]?dd?$ 能匹配以下哪个表达式    ?

 

255

256

2

25a

19:01:32 

有一种用左右值表示树形结构的存储格式,其中左右值有一些相当有用的场景,但是每个节点的左右值需要遍历树形结构计算出来。一个示例:

N[1,12]

     |__N[2,7]

     |        |__N[3,4]

     |        |__N[5,6]

     |__N[8,11]

              |__N[9,10]

请完成遍历算法给节点赋左右值。

typedef struct node_t {

    int left;

    int right;

    int n_children;

    1                                      children;

} NODE;

int visit(NODE * node, int value) {

    node->left = value;

    int i = 0;

    for(i=0; i<node->n_children; i++) {

          2                                          

    }

    3                                 

   

    return value;

}

int initLR(NODE* root) {

    return visit(root, 1);

}

19:08:27 

请写一个表达式,用于判断一个INT32整数n是不是2的幂。该表达式在n2的幂的时候返回true,其他时候返回false

19:08:36 

C语言编写的动态库中的函数,如何才能被C++调用?

以下是一段基于链表的栈的实现代码,请补充空白处的代码。

class Stack {

    Node top;

    Object pop() {

      if (top != null) {

        Object item = top.data;

                (1)    

        return item;

      }

       return null;

    }

    void push(Object item) {

      Node t = new Node(item);

              (2)    

      top = t;

    }

 }

class Node{

     Node next;

     Object data;

     public Node(Object item){

          data = item;

    }

}

某二叉树的先序遍历是12453,中序遍历是42513,那么其后续遍历是______

45231

42351

12345

54321

先序遍历12453,中序遍历42513,那么后续遍历是____

45231

42351

12345

54321





原文地址:https://www.cnblogs.com/wang3680/p/9088c1d6a54e664a8900f9db57b5fa9b.html