总结面试练过的题目

序号

题目

1

在数组中,数字减去它右边的数字得到一个数对之差。求所有数对之差的最大值。例如在数组{2, 4, 1, 16, 7, 5, 11, 9}中,数对之差的最大值是11,是16减去5的结果。

2

二元树中和为某一值的所有路径

3

查找最小的k个元素

4

输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果

5

输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。例如输入“I am a student.”,则输出“student. a am I”

6

链表中倒数第k个结点

7

排序数组中和为给定值的两个数字

8

求二元查找树的镜像

9

输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印

10

在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b

11

n个数字(0,1,…,n-1)形成一个圆圈,从数字0开始,每次从这个圆圈中删除第m个数字。当一个数字删除后,从被删除数字的下一个继续删除第m个数字。求出在这个圆圈中剩下的最后一个数字。

12

输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345。

13

输入一个整数,求该整数的二进制表达中有多少个1。例如输入10,由于其二进制表示为1010,有两个1,因此输出2

14

输入一棵二元树的根结点,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。

15

输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。

16

一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。

17

两个单向链表,找出它们的第一个公共结点

posted @ 2015-08-20 09:33  pauking  阅读(98)  评论(0)    收藏  举报