知之可否

Be yourself; everyone else is already taken.​

排序:
默认
按更新时间
按访问量

剑指offer:重建二叉树

题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。/** * Definition for binar...

2016-06-16 16:08:07

阅读数:195

评论数:0

剑指offer:旋转数组的最小数字

题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。clas...

2016-06-16 10:57:04

阅读数:358

评论数:0

海量数据搜索、查询

1.有一篇英文文章(也就是说每个单词之间由空格分隔),请找出“csdn”这个单词出现的次数。要求效率最高,并写出算法的时间级。方法一: 假设不区分大小写,由于英文字母有26个,因此,可以将单词映射为数字。csdn被映射成:   ( ‘c ‘- ‘a ‘)*32*32*32+( ‘s ‘- ‘a...

2016-05-13 16:18:30

阅读数:803

评论数:0

剑指offer:数据流中的中位数

题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。class Solution { public: Solution() :cnt(0){} ...

2016-05-06 11:39:27

阅读数:318

评论数:0

剑指offer:矩阵中的路径

题目描述请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 例如 a b c e s f c s a d e e 矩阵...

2016-05-05 22:29:52

阅读数:419

评论数:0

剑指offer:滑动窗口的最大值

题目描述给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4]...

2016-05-05 21:17:40

阅读数:502

评论数:0

剑指offer:二叉搜索树的第k个结点

题目描述给定一颗二叉搜索树,请找出其中的第k大的结点。例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4。递归/* struct TreeNode { int val; struct TreeNode *left; struct...

2016-05-05 15:56:19

阅读数:969

评论数:0

剑指offer:按之字形顺序打印二叉树

题目描述请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。/* struct TreeNode { int val; struct TreeNode *left; struct T...

2016-05-05 09:58:27

阅读数:384

评论数:0

剑指offer:把二叉树打印成多行

题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : ...

2016-05-04 22:36:01

阅读数:298

评论数:0

剑指offer:对称的二叉树

题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; ...

2016-05-04 22:05:13

阅读数:352

评论数:0

剑指offer:二叉树的下一个结点

题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。using namespace std; /* struct TreeLinkNode { int val; struct TreeLink...

2016-05-04 21:37:25

阅读数:260

评论数:0

剑指offer:删除链表中重复的结点

题目描述在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5跟 lintcode中这题不同 http://www.lintcode...

2016-05-04 20:41:15

阅读数:242

评论数:0

剑指offer:链表中环的入口结点

题目描述一个链表中包含环,请找出该链表的环的入口结点。/* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } }; *...

2016-05-04 17:20:15

阅读数:300

评论数:0

剑指offer:字符流中第一个不重复的字符

题目描述请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符”go”时,第一个只出现一次的字符是”g”。当从该字符流中读出前六个字符“google”时,第一个只出现一次的字符是”l”。 输出描述: 如果当前字符流没有存在出现一次的字符,返回#字符。clas...

2016-05-04 16:23:25

阅读数:317

评论数:0

剑指offer:表示数值的字符串

题目描述请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串”+100”,”5e2”,”-123”,”3.1416”和”-1E-16”都表示数值。 但是”12e”,”1a3.14”,”1.2.3”,”+-5”和”12e+4.3”都不是。class Solution { publ...

2016-05-04 11:59:27

阅读数:687

评论数:0

剑指offer:正则表达式匹配

题目描述请实现一个函数用来匹配包括’.’和’‘的正则表达式。模式中的字符’.’表示任意一个字符,而’‘表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串”aaa”与模式”a.a”和”ab*ac*a”匹配,但是与”aa.a”和”ab*a”均不匹...

2016-05-04 11:11:59

阅读数:1150

评论数:5

剑指offer:构建乘积数组

题目描述给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…A[i-1]*A[i+1]…*A[n-1]。不能使用除法。class Solution { public: vector<int> multiply(...

2016-05-04 10:21:45

阅读数:332

评论数:0

剑指offer:数组中重复的数字

题目描述在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是重复的数字2或者3。class Soluti...

2016-05-04 09:56:17

阅读数:591

评论数:0

剑指offer:不用加减乘除做加法

题目描述写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。class Solution { public: int Add(int num1, int num2) { int sum, carry; do{ ...

2016-05-03 11:01:33

阅读数:199

评论数:0

剑指offer:求1+2+3+...+n

题目描述求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。方法一:构造函数class helper { public: helper(){ sum += (++n); } s...

2016-05-03 10:40:39

阅读数:561

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭