首页 > 代码库 > 剑指 Offer 题目汇总索引

剑指 Offer 题目汇总索引

剑指 Offer 总目录:(共50道大题)

1. 赋值运算符函数(或应说复制拷贝函数问题 

2. 实现 Singleton 模式 (C#)

3.二维数组中的查找

4.替换空格               时间:O(n) 空间:O(1)

5.从尾到头打印链表

6. 重建二叉树          && 二叉树的各种遍历(BFS,DFS,DLR,LDR,LRD)

7.用两个栈实现队列

8.旋转数组的最小数字

9.斐波那契数列第 n 项        时间O(lgn)

10.一个整数的二进制表示中 1 的个数

11. double 数值的整数次方 

12.打印 1 到最大的 n 位数

13. O(1) 时间删除链表结点

14. 奇数(或满足其它要求)置前,偶数置后。

15. 链表中倒数第 k 个结点 

16. 反转链表

17.合并两个排序的链表(递归) 

18. 判断树 B 是否为树 A 的子结构(递归)

19. 二叉树的镜像(递归)

20. 顺时针打印矩阵

21. 包含 min  函数的栈

22. 根据栈的压入序列,判断一个序列是否是弹出序列。

23. 从上往下打印二叉树

24. 判断序列是否为二叉搜索树的后序遍历(递归)

25. 二叉树中和为某一值的路径(递归)

26. 复杂链表的复制

27.二叉搜索树生成有序双向链表

28.字符串的全排列       n 皇后问题

29. 数组中出现次数超过一半的数字.

30. 最小的 k 个数

31. 连续子数组的最大和

32. 从 1 到 n 整数中 k (0,1, 2, 3, 4, 5, 6, 7, 8, 9)出现的次数。  时间 O(log10N)

33. 把正整数数组排成最小的数

34. 第 n 个丑数

35. 第一个只出现一次的字符

36.数组中的逆序对个数 (归并排序解法)

34.  两个链表的第一个公共结点

35. 第一个只出现一次的字符

36.数组中的逆序对个数 (归并排序解法)

37.  两个链表的第一个公共结点

38. 数字 k 在有序数组中出现的次数

39. 二叉树的深度 && 平衡二叉树的判断 &&  二叉树结点的最大距离(题目来自编程之美,解法自创)

40. 数组中只出现一次的数字

41. 和为 S 的连续正数序列。

42. 翻转单词顺序 && 字符串左旋转

43.  投 n 个骰子,计算点数和出现的概率

44. 取 k 张扑克牌,看其是否是顺子。

45. 圆圈中最后剩下的数字。

46. 求 1+2+ … +n。 :不用乘除法、for、while、if、else、switch、case 以及条件判断语句(A?B:C)。

47. 不用 +、-、*、/ 做加法

48. 不能被继承的类

49. 把字符串转换为整数

50. 树种两个结点的最低公共祖先