摘要: 第20题: 题目:输入一个表示整数的字符串,把该字符串转换成整数并输出。 例如输入字符串"345",则输出整数345。 简单的模拟,不考虑超int #include<iostream> #include<cstdio> using namespace std; int changeToNum(cha 阅读全文
posted @ 2016-03-11 15:56 dreamOwn 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 第19题: 题目:定义Fibonacci数列如下: / 0 n=0 f(n)= 1 n=1 \ f(n-1)+f(n-2) n=2 输入n,用最快的方法求该数列的第n项。 分析:在很多C语言教科书中讲到递归函数的时候,都会用Fibonacci作为例子。 因此很多程序员对这道题的递归解法非常熟悉,但. 阅读全文
posted @ 2016-03-11 15:39 dreamOwn 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 第18题: 题目:n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始, 每次从这个圆圈中删除第m个数字(第一个为当前数字本身,第二个为当前数字的下一个数字)。 当一个数字删除后,从被删除数字的下一个继续删除第m个数字。 求出在这个圆圈中剩下的最后一个数字。 July:我想,这个题目,不少人已经 阅读全文
posted @ 2016-03-11 15:38 dreamOwn 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 第17题: 题目:在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b。 分析:这道题是2006年google的一道笔试题。 #include<cstring> #include<iostream> using namespace std; int cnt[260];//字符 阅读全文
posted @ 2016-03-11 14:37 dreamOwn 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 第16题: 题目(微软): 输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。 例如输入 8 / \ 6 10 / \ / \ 5 7 9 11 输出8 6 10 5 7 9 11。 不想吐槽了,和上题简直一模一样。我是直接复制的上一题代码,将sawp函数直接换成了一个输 阅读全文
posted @ 2016-03-11 14:17 dreamOwn 阅读(1292) 评论(0) 推荐(0) 编辑
摘要: 第15题: 题目:输入一颗二元查找树,将该树转换为它的镜像, 即在转换后的二元查找树中,左子树的结点都大于右子树的结点。 用递归和循环两种方法完成树的镜像转换。 例如输入: 8 / \ 6 10 /\ /\ 5 7 9 11 输出: 8 / \ 10 6 /\ /\ 11 9 7 5 定义二元查找树 阅读全文
posted @ 2016-03-11 14:08 dreamOwn 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 第14题: 题目:输入一个已经按升序排序过的数组和一个数字, 在数组中查找两个数,使得它们的和正好是输入的那个数字。 要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字,输出任意一对即可。 例如输入数组1、2、4、7、11、15和数字15。由于4+11=15,因此输出4和11。 思路:从前后 阅读全文
posted @ 2016-03-11 12:59 dreamOwn 阅读(355) 评论(0) 推荐(0) 编辑