上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 59 下一页
摘要: 使用两个栈来协助完成二叉树的遍历操作。 不难发现,如果我们以“根->右->左”的顺序遍历二叉树,将结果压进栈中,弹栈的时候顺序就是“左->右->根”,也就是后序遍历的结果了。 而“根->右->左”的遍历顺序和先序遍历很像(先序遍历是“根->左->右”) 用stack1协助,对每个结点依次将“根->右 阅读全文
posted @ 2020-05-15 10:43 知道了呀~ 阅读(589) 评论(0) 推荐(0)
摘要: class Solution { public: vector<vector<int>> levelOrder(TreeNode* root) { vector<vector<int>> res; //注意判断根为空的情况 if (root == NULL) return res; queue<Tr 阅读全文
posted @ 2020-05-15 09:19 知道了呀~ 阅读(320) 评论(0) 推荐(0)
摘要: 堆的定义 堆就是一棵可以自我平衡的完全二叉树 优先队列的底层数据结构就是堆,实现和堆基本一样 由于堆存储在下标从0开始计数的数组中,因此,在堆中给定下标为i的结点时: 如果 i = 0,结点 i 是根结点,无父结点;否则结点 i 的父结点为结点 [(i - 2) / 2] 如果 2i + 1 > n 阅读全文
posted @ 2020-05-14 23:08 知道了呀~ 阅读(4213) 评论(0) 推荐(0)
摘要: 一、C++是C的升级,为啥两者不能直接相互调用? 1、我们知道,代码从编写,到能执行之前,仍需要经过编译(.obj)、链接阶段(.exe)。通常,编译每一个单元文件会生成目标文件, 然后链接器会把各个目标文件链接起来生成可执行性文件。 2、链接器之所以能把目标文件相互之间链接起来,就是通过查找目标文 阅读全文
posted @ 2020-05-14 09:46 知道了呀~ 阅读(686) 评论(0) 推荐(0)
摘要: 变量定义 变量定义使用“数据类型+变量名称”的形式,编译器需要给他分配内存单元的; 变量声明 声明的时候不能赋初值,否则就变成定义了 而变量声明使用“extern 变量类型+变量名称”的形式,是告诉编译器我这个变量将在其他外部c文件中定义,我这里只是在外部用它。编译器就不给他分配内存空间,而等到真正 阅读全文
posted @ 2020-05-13 21:10 知道了呀~ 阅读(6093) 评论(0) 推荐(1)
摘要: #include<iostream> using namespace std; class parent { public: parent() { cout << "父类构造" << endl; } ~parent() { cout << "父类析构" << endl; } }; class chi 阅读全文
posted @ 2020-05-13 16:55 知道了呀~ 阅读(462) 评论(0) 推荐(0)
摘要: 当一个元素要入栈时,我们取当前辅助栈的栈顶存储的最小值,与当前元素比较得出最小值,将这个最小值插入辅助栈中(min_stack.push(min(x,min_stack.top())) 当一个元素要出栈时,我们把辅助栈的栈顶元素也一并弹出; 在任意一个时刻,栈内元素的最小值就存储在辅助栈的栈顶元素中 阅读全文
posted @ 2020-05-13 15:11 知道了呀~ 阅读(248) 评论(0) 推荐(0)
摘要: dfs递归枚举每个点分片段的数字是否合法 class Solution { public: bool isValid(string ip) { int val = stoi(ip); if (val > 255) return false; if (ip.size() >= 2 && ip[0] = 阅读全文
posted @ 2020-05-13 14:41 知道了呀~ 阅读(271) 评论(0) 推荐(0)
摘要: 先用栈判断括号匹配,在把所有匹配的括号标记为0,然后求最长的0序列 class Solution { public: int longestValidParentheses(string s) { int len = s.length(); int ans = 0; stack<int>p; for 阅读全文
posted @ 2020-05-13 10:30 知道了呀~ 阅读(253) 评论(0) 推荐(0)
摘要: 简单介绍: 环形缓冲区就是在最开始的时候申请一个大buffer,有一个读指针,一个写指针,随着数据写入和读取改变读写指针,具体分为三总情况: 1、是读写速度差不多,这种情况比较简单。 2、写的很快读的慢、这种情况写指针很快回头追上了读指针,这时候就会出现写buffer覆盖掉读指针的内存块,如果还继续 阅读全文
posted @ 2020-05-09 17:13 知道了呀~ 阅读(4825) 评论(0) 推荐(0)
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 59 下一页