摘要: 题目:已经两个已经排好序的数组,找出两个数组合起来的中间大的数字。要求算法复杂度尽可能低。如:x数组:1,7,9,10,30 y数组:3,5,8,11 则中间大数为:8这个题目看似简单,不过要处理起来还是有很多小细节需要注意的。主要思想就是用两个指针同时遍历两个数字,如果第一个数组的值比第二个的小,就第一个数组向前走,否则第二个数组向前走。如果两个的下标等于中间的下标了,那么输出,如果一个数组遍历完成了,还没有到达中间的下标,则说明中间值在另个数组中,标号为 中间下标减去走完的数组元素总数。代码如下: #include "stdafx.h"#include <iost 阅读全文
posted @ 2012-10-27 21:47 三更_雨 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 传说是一道腾讯的面试题题目如下: 根据上排给出十个数,在其下排填出对应的十个数 要求下排每个数都是先前上排那十个数在下排出现的次数。 上排的十个数如下: 【0,1,2,3,4,5,6,7,8,9】没错,题目就是只有这么一点。思考过程:第一排的数字: 0 1 2 3 4 5 6 7 8 9 如果下一排全是0的话,那么,0下面(即指第二排,之后类似)就应该是10,这样,0下的的数字就应该是9,那么9下面就应该是1,那么1下面就应该是1,那么0下面就成了7,这样9下面的1就不应该存在了,反而7下面是1,这样1下面是1,7下面也是1,这样1下面就应该是2,不过这个又带来一个问题就是,1下面是2就是错的 阅读全文
posted @ 2012-10-27 21:09 三更_雨 阅读(4885) 评论(0) 推荐(0) 编辑
摘要: 原文地址: http://blog.csdn.net/wcyoot/article/details/6428248貌似原文说的不是太详细,表示理解之后,在这里重新解释下,同时感谢原文博主提供了这么多题目以及解答。题目:4个人在晚上过一座小桥,过桥时必须要用到手电筒,只有一枚手电筒,每次最多只可以有两人通过, 4个人的过桥速度分别为1分钟、2分钟、5分钟、10分钟,试问最少需要多长时间4人才可以全部通过小桥?抽象: N个人过桥,每个人过桥需要的时间为ti(1<=i<=N).每次最多两个人过桥,并且还要回来一个。求最快过桥时间。输入:每人过桥时间数组,人数(数组元素个数)。输出:最快时 阅读全文
posted @ 2012-10-27 20:06 三更_雨 阅读(636) 评论(0) 推荐(0) 编辑