四个微软面试算法问题_面试技巧.doc
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四个微软面试算法问题_面试技巧
(1)整数序列,元素值可以是0-65535中的任何一个,并且相同的值不会重复。
0是例外,可以重复。
请设计一个算法,当你从序列中随机选择5个值时,判断这5个值是否连续相邻。
注意:-5个值被允许是无序的。
例如:87506;-0可以与任何值匹配。
例如:8 7 5 0 6中的0可以与9或4匹配;-0可以出现多次;-如果复杂性为0(N2),则不得分。
(2)设计一种算法来寻找二叉树上任意两个节点的最近公共父节点。
如果复杂度为0(N2),则没有得分。
(3)排序二叉树,设f=(最大值和最小值)/2,设计一个算法来寻找最接近f值且大于f值的节点。
如果复杂度为0(N2),则没有得分。
(4)对于整数序列,元素值可以是从1到n的任何数字(n是更大的正整数),并且相同的值将不会重复。
设计了一种算法来找出序列中合格对的数目,并且两个满意对的和等于N 1。
复杂度最好是0(n),如果是0(N2),则不打分。
(结束)。