- 博客(4)
- 资源 (1)
- 收藏
- 关注
原创 剑指offer 08 两个栈实现队列
题目描述解题思路栈:后进先出,每次只能弹出栈顶元素。队列:先进先出。每次只能弹出队首元素。思路:引进辅助栈。主栈A存储元素,每次添加新元素的时候,直接压入A。当需要弹出元素的时候,辅助栈B就派上了用场。为了实现队列,实习上我们需要弹出栈底的元素,可行的办法是每次需要弹出的时候,将A的元素逐渐压入B中,当A中位空的时候,B的栈顶就是带弹出的元素。将B的栈顶元素弹出之后,在逐个压入A中即可...
2020-04-28 23:00:04 120
原创 剑指offer 07
题目描述解题思路前序遍历:先访问根节点,再访问左子树,再访问右子树。后序遍历:先访问左子树,再访问右子树,再访问根节点。中序遍历:先访问左子树,再访问根节点,再访问右子树。规律1)前序遍历序列的第一个节点是根2)后序遍历序列的最后一个节点是根3)中序遍历中,根左边的是左子树部分,跟右边的右子树部分4)前序(后序)遍历决定层次,中序遍历决定顺序。思路设计到树的问题,首先考虑...
2020-04-28 22:53:28 166
原创 剑指offer04
题目描述解题思路该矩阵的特点是左上角的元素最小,右下角的元素最大。左下角的元素是同一行中最小的,也是同一列中最大的。我们开始从左下角开始查找,如果目标值比数组元素大,就到右边去寻找,如果目标值比数组元素小,就到上边去寻找。类似的,我们也可以从右上角开始查找。代码class Solution {public: bool findNumberIn2DArray(vector&...
2020-04-28 22:41:29 190
原创 剑指offer50
题目描述思路用哈希表统计每个字符出现个个数,关键值是字符,值是出现的次数,随后遍历哈希表即可。代码class Solution {public: char firstUniqChar(string s) { //哈希表统计各个字符出现的次数 unordered_map<char, int> m; for(char c:...
2020-04-28 22:35:06 151
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人