阿里巴巴研发题目

来源:互联网 发布:日事清 知乎 编辑:程序博客网 时间:2024/05/02 01:38

阿里2个人,一人只说真话,一人只说假话,如何只问其中某个人一句话,就分辨出谁是说真话的,谁是说假话的?______。

 

·        问任何一人:你是说真话的,对吗

·        指着其中一人,问另一人:他是说真话的,对吗

·        指着其中一人,问另一人:他是说假话的,对吗

·        做不到

主机甲和主机乙间已建立一个TCP连接,主机甲向主机乙发送了两个连续的TCP段,分别包含300字节和500字节的有效载荷,第一个段的序列号为200,主机乙正确接收到两个段后,发送给主机甲的确认序列号是    

·        500

·        700

·        800

·        1000

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

·        插入排序

·        冒泡排序

·        快速排序

·        堆排序

检验多线程的异步运行结果的方式是    

·        单步调试

·        logging

·        codereview

·        unittest

用二进制来编码字符串“abcdabaa”,需要能够根据编码,解码回原来的字符串,最少需要______位的二进制字符串。

 

·        12

·        14

·        18

·        24

默认block  size情况下,Ext3文件系统支持的最大文件大小是 ______。

·        4TB

·        4GB

·        2TB

·        2GB

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

·        45231

·        42351

·        12345

·        54321

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

     

 

·        A按行存,B按行存

·        A按行存,B按列存

·        A按列存,B按行存

·        A按列存,B按列存

平均速度最快的排序算法是______。

 

·        Shell排序

·        快速排序

·        冒泡排序

·        插入排序

甲乙两人玩掷骰子,比谁掷出的点数大,点数大的获胜。如果一样大,那么就是平局。请问甲赢的概率是______。

·        1/4

·        1/3

·        5/12

·        1/2

小数值1.5625的二进制表示是____。

·        101.1001

·        0.001

·        101.111

·        1.1001

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

 

·        插入排序

·        二分查找

·        合并排序

·        快速排序

对于一个二叉查找树,以下遍历方式中,______可以得到一个递增数列。

·        先序遍历

·        中序遍历

·        后序遍历

·        层次遍历

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

·        只能用于数组

·        只能用于链表

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

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

设集合A={1,2,3},A上的关系R={(1,1),(2,2),(2,3),(3,2),(3,3)},则R不具备    

·        自反性

·        传递性

·        对称性

·        反对称性

一个容器类数据结构,读写平均,使用锁机制保证线程安全。如果要综合提高该数据结构的访问性能,最好的办法是______。

·        只对写操作加锁,不对读操作加锁

·        读操作不加锁,采用copyOnWrite的方式实现写操作

·        分区段加锁

·        无法做到

以下访问速度最快的设备是    

·        寄存器

·        内存

·        磁盘

·        L1Cache

设某棵二叉树中只有度数为0和度数为2的结点, 且度数为0的结点数为n,则这棵二叉中共有______个结点。

·        2n

·        n+1

·        2n-1

·        2n+1

在TCP/IP参考模型中,TCP协议工作在    

·        应用层

·        传输层

·        互联网层

·        网络接口层

频繁的插入删除操作使用____结构比较合适。

·        数组

·        队列

·        链表

·        

  程序

struct T {

    char a;

    int *d;

    int b;

    int c:16;

    double e;

};

T *p;

在64位系统上以下描述正确的是    

·        sizeof(p)== 8

·        sizeof(*p)== 32

·        sizeof(p->a)== 1

·        sizeof(p->e)== 4

无锁化编程有哪些常见方法?______ 。

 

·        针对计数器,可以使用原子加

·        只有一个生产者和一个消费者,那么就可以做到免锁访问环形缓冲区(Ring Buffer

·        RCURead-Copy-Update),新旧副本切换机制,对于旧副本可以采用延迟释放的做法

·        CASCompare-and-Swap),如无锁栈,无锁队列等待

下面所述步骤中,是创建进程所必须的步骤是_____。

 

 

·        由调度程序为进程分配CPU

·        建立一个进程控制块

·        为进程分配内存

·        为进程分配文件描述符

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

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

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

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

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

 

 

长度为100的环形双向链表,A指针顺时针方向每次走3步,B指针逆时针方向每次走5步,每次走完判断是否相遇,初始状态BA逆时针方向相距20,走100次,AB指针能相遇几次?

 

 

 

A, B从一堆玻璃球(共100个)里向外拿球,规则如下: (1)A先拿,然后一人一次交替着拿;(2)每次只能拿1个或2个或4个;(3)谁拿最后一个球,谁就是最后的失败者;AB谁将是失败者?写出你的判断步骤。(不用写代码,不写原因不得分)

 

我们需要在淘宝的商品中提取一批优质商品(有特色、质量好、服务好等),比如需要提取100万件,准确率要求是95%。我们有n个不同的方法可以提取这些商品,但每个方法在保持准确率满足要求的情况下都不能做到提取完整的100万件商品。因此可以把这n个方法得到的满足要求的商品集按如下方法合并起来:如果一个商品被k个方法选为优质商品,则将它的分数设为k;按照k从大到小排序选取前100万件。但实际中发现这样选出的100万件商品不符合精度要求,请解释可能的原因。还可以向哪个方向努力?

 

 

JAVA选做题(注:阿里有大量JAVA研发工程师需求;选作以下题目有机会增加该方向面试机会)

天猫双十一有个积分换墨盒的活动,总共有50万台天猫魔盒(box),每个用户(user)可以用99个天猫积分(point)兑换一台魔盒,且每人限换一台。

请设计一套java接口并实现下单(order)逻辑。

参考(但不局限于)下面的下单逻辑:

1、创建订单

2、扣减用户积分

3、扣减魔盒库存

4、下单成功

同时请回答:

1、数据库表结构如何设计,有哪些表,分别有什么作用?

2、下单过程中哪些地方可能成为瓶颈?如何解决或改善?

3、是否会用到数据库事务,哪些地方会用到?如果不用数据库事务,如何保证数据的一致性?

 

 

抽签和摇号程序通常需要真随机数发生器。假定某基于热力学机制的真随机数发生器每次可独立生成p个状态的均匀分布随机数。那么能否基于这个随机数发生器在工程上生成一个任意n状态的均匀分布随机数,误差允许在一定的范围内,比如最大的概率减去最小的概率小于e

 

有个学校的15个女生一直3个一群上学。请问该如何安排才能使这些女生每周7天每天都和两个不同的同伴结伴同行呢?例如:用AO来标识这些女孩,7A正好和BO14个女孩各同行一次。而BO每个人和都和其他14个女孩各同行一次。

0 0
原创粉丝点击