上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 38 下一页
摘要: 题目: 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 解答: 分析二叉树的下一个节点,一共有以下情况: 1.二叉树为空,则返回空; 2.节点右孩子存在,则设置一个指针从该节点的右孩子出发,一直沿着指向左子结点的 阅读全文
posted @ 2020-05-06 19:37 梦醒潇湘 阅读(183) 评论(0) 推荐(0)
摘要: 题目:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)。 解答: 1 class Solution { 2 bool isSubtree(TreeNode* pRootA, TreeNode* pRootB) 3 { 4 if (pRootB == NULL 阅读全文
posted @ 2020-05-06 18:39 梦醒潇湘 阅读(196) 评论(0) 推荐(0)
摘要: 题目: 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 解答: 3 4 /* 5 *解题思路: 6 *1、遍历链 阅读全文
posted @ 2020-05-06 17:23 梦醒潇湘 阅读(177) 评论(0) 推荐(0)
摘要: 题目: 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 解答: 1 // 中序遍历即可。只需要记录一个pre指针即可。 2 3 4 class Solution { 5 public: 6 TreeNode* Convert(Tre 阅读全文
posted @ 2020-05-06 17:03 梦醒潇湘 阅读(165) 评论(0) 推荐(0)
摘要: 题目: 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。 解答: 思路: 设置快慢指针,都从链表头出发,快指针每次走两步,慢指针一次走一步,假如有环,一定相遇于环中某点(结论1)。接着让两个指针分别从相遇点和链表头出发,两者都改为每次走一步,最终相遇于环入口(结论2)。以下 阅读全文
posted @ 2020-05-06 16:30 梦醒潇湘 阅读(170) 评论(0) 推荐(0)
摘要: 题目: 解答: 1 class Solution { 2 public: 3 string minNumber(vector<int>& nums) 4 { 5 // 选取使字符串组合更小的排序规则 6 auto compare = [](string sa, string sb){return s 阅读全文
posted @ 2020-05-05 21:54 梦醒潇湘 阅读(157) 评论(0) 推荐(0)
摘要: 题目: 解答: C++实现起来用priority_queue容器,默认从小到大排序,底层实现为最大堆。 1 class Solution { 2 public: 3 vector<int> smallestK(vector<int>& arr, int k) 4 { 5 vector<int> re 阅读全文
posted @ 2020-05-05 21:51 梦醒潇湘 阅读(148) 评论(0) 推荐(0)
摘要: 题目: 解答: 1 class Trie { 2 private: 3 bool isEnd; 4 Trie* next[26]; 5 public: 6 Trie() 7 { 8 isEnd = false; 9 memset(next, 0, sizeof(next)); 10 } 11 12 阅读全文
posted @ 2020-05-05 21:44 梦醒潇湘 阅读(186) 评论(0) 推荐(0)
摘要: 题目: 解答: 采用双栈的办法以空间换时间,栈s1作为普通的数据栈,栈s2用来保存每次入栈时的较小值,这样s2栈顶的值总是栈中元素的最小值。 1 class MinStack { 2 public: 3 /** initialize your data structure here. */ 4 Mi 阅读全文
posted @ 2020-05-05 21:40 梦醒潇湘 阅读(116) 评论(0) 推荐(0)
摘要: 题目: 解答: 1 class Solution { 2 public: 3 int maxProduct(vector<int>& nums) 4 { 5 int max = INT_MIN; 6 int imax = 1; 7 int imin = 1; 8 9 for (int i = 0;i 阅读全文
posted @ 2020-05-05 21:36 梦醒潇湘 阅读(186) 评论(0) 推荐(0)
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 38 下一页