天天看点

(转)微软面试题

来源:http://www.cnblogs.com/qlee/archive/2011/09/16/2178873.html

1、有一个整数数组,请求出两两之差绝对值最小的值,记住,只要得出最小值即可,不需要求出是哪两个数。

(转)微软面试题
(转)微软面试题

View Code

(转)微软面试题
(转)微软面试题
(转)微软面试题

2、平面上N个点,没两个点都确定一条直线,求出斜率最大的那条直线所通过的两个点

平面上N个点,没两个点都确定一条直线,求出斜率最大的那条直线所通过的两个点(斜率不存在的情况不考虑)。时间效率越高越好。

先把N个点按x排序。

斜率k最大值为max(斜率(point[i],point[i+1]))    0 <=i <n-2。

复杂度Nlog(N)。

以3个点为例,按照x排序后为ABC,假如3点共线,则斜率一样,假如不共线,则可以证明AB或BC中,一定有一个点的斜率大于AC,一个点的斜率小于AC。

3、写一个函数,检查字符是否是整数,如果是,返回其整数值。(或者:怎样只用4行代码编写出一个从字符串到长整型的函数)

(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题

4、怎样编写一个程序,把一个有序整数数组放到二叉树中?

(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题

5、怎样从顶部开始逐层打印二叉树结点数据?请编程。

(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题

6、编程实现两个正整数的除法

(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题

7、在排序数组中,找出给定数字的出现次数。比如 [1, 2, 2, 2, 3] 中2的出现次数是3次。

(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题

8、一个整数数列,元素取值可能是0~65535中的任意一个数,相同数值不会重复出现。0是例外,可以反复出现。

请设计一个算法,当你从该数列中随意选取5个数值,判断这5个数值是否连续相邻。

注意:

- 5个数值允许是乱序的。比如: 8 7 5 0 6

- 0可以通配任意数值。比如:8 7 5 0 6 中的0可以通配成9或者4

- 0可以多次出现。

- 复杂度如果是O(n2)则不得分。

插入排序-》最大值-最小值<=4

9、一棵排序二叉树,令 f=(最大值+最小值)/2,设计一个算法,找出距离f值最近、大于f值的结点。复杂度如果是O(n2)则不得分。

(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题
(转)微软面试题

<a></a>

<a>本文转自夏雪冬日博客园博客,原文链接:http://www.cnblogs.com/heyonggang/archive/2013/04/26/3045759.html,如需转载请自行联系原作者</a>

继续阅读