随笔分类 - 剑指Offer
互联网公司面试
摘要:题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 旋转数组的特点: (1)旋转之后的数组实际上可以划分为两个排序的子数组,且前
阅读全文
摘要:题目描述:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。 在上述队列的声明中可以看出,一个队列包含了两个栈stack1和stack2,因此这道题的意图是要求我们操作这两个“先进后出”的栈实现一
阅读全文
摘要:知识要点 首先介绍一下曼哈顿,曼哈顿是一个极为繁华的街区,高楼林立,街道纵横,从A地点到达B地点没有直线路径,必须绕道,而且至少要经C地点,走AC和 CB才能到达,由于街道很规则,ACB就像一个直角3角形,AB是斜边,AC和CB是直角边,根据毕达格拉斯(勾股)定理,或者向量理论,都可以知道用AC和C
阅读全文
摘要:1 /* 2 题目描述 3 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 4 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 5 */ 6 7 /* 8 Time:2016-9-8 15:44:52 9 Author:CodingMengmeng 10 */ 11 #include 12 #...
阅读全文
摘要:/* 题目描述 请实现一个函数,将一个字符串中的空格替换成“%20”。 例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 */ /* 分析 将长度为1的空格替换为长度为3的“%20”,字符差的产度变长。 如果允许我们开辟一个新的数组来存放替换空格后的字符串, 那么这道题目就非常简 单。设置两个指针分别指向新旧字符串首元素, ...
阅读全文
摘要:问题描述: 输入一个链表,从尾到头打印链表每个节点的值。 方法一:通过借助容器vector和栈stack共同完成 解决这个问题肯定要遍历链表。遍历的顺序是从头到尾的顺序,可输出的顺序却是从尾到头。也就是说第一个遍历到的结点最后一个输出,而最后一个遍历到得结点第一个输出。这就是典型的“后进先出”,可以
阅读全文
摘要:问题描述: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 思路: 在二叉树的前序遍历序列中,第一个数字总是树
阅读全文