给你一个矩阵 mat,其中每一行的元素都已经按 递增 顺序排好了。请你帮忙找出在所有这些行中 最小的公共元素。 如果矩阵中没有这样的公共元素,就请返回 -1。 解法: 暴力解法 就是使用哈希记录每行 然后比较 代码 ...
分类:
其他好文 时间:
2019-09-22 21:34:02
阅读次数:
1034
Given a rooted binary tree, return the lowest common ancestor of its deepest leaves. Recall that: The node of a binary tree is a leaf if and only if i ...
分类:
其他好文 时间:
2019-08-23 00:01:48
阅读次数:
99
特点 常用于确定无向图的连通分量(虽然DFS也可以做),求最小公共祖先(LCA) 朴素版并查集 路径压缩 为了减少树的高度,直接将查找路径上的结点连接到根上去,降低查找时间 按秩合并 秩表示结点高度的上界,(算法导论上说路径压缩不会改变每个结点的秩?没想通,难道是指的上界),将秩小的树指向秩大的树称 ...
分类:
其他好文 时间:
2019-06-04 17:39:43
阅读次数:
121
http://codeforces.com/group/NVaJtLaLjS/contest/238202/problem/E 题意: 输入数字N,还有两只牛的名字; 输入N行父子关系(题中为母女)即两个名字,前者是父,后者是子; 问两只牛是什么亲属关系。 具体的输出规则(亲属关系)请见原题。 示例 ...
分类:
其他好文 时间:
2019-03-15 09:20:04
阅读次数:
139
LCA最小公共父节点解法: 1、二叉搜索树: 中序遍历是升序,前序遍历即按序插入建树的序列。 二叉搜索树建树最好用前序+中序,如果用前序建树,最坏情况会退化为线性表,超时。 最近公共祖先甲级: A1143,1151 利用二叉搜索树的性质寻找结点u和v的最低公共祖先(递归解法) 1)如果根结点的值大于 ...
分类:
其他好文 时间:
2019-02-17 00:59:00
阅读次数:
211
235. Lowest Common Ancestor of a Binary Search Tree 在一个二叉搜索树中找两个节点的最小公共父节点。 使用二叉搜索树的性质,设x是二叉搜索树中的一个结点。如果y是x左子树中的一个结点,那么会有y.key<=x.key;如果y是x右子树中的一个节点,那 ...
分类:
其他好文 时间:
2018-10-29 20:05:37
阅读次数:
139
\ 里面主要的两个算法比较难以赘述,miniset主要就是求最小公共子集。(个人认为) ...
分类:
Web程序 时间:
2018-10-16 19:27:14
阅读次数:
300
1. 二叉树的遍历:先序(递归、非递归),中序(递归、非递归),后序(递归、非递归)。 2. 获取二叉树节点个数: 3. 判断二叉树是否为完全二叉树: 4. 求二叉树两个节点的最小公共祖先: 5. 二叉树的翻转: 6. 求二叉树第k层的节点个数: 7. 求二叉树中节点的最大距离(相距最远的两个节点之 ...
分类:
编程语言 时间:
2018-08-28 17:57:22
阅读次数:
179
链表 反转链表 链表倒数第k个 最小公共节点 树 红黑 树 二叉树 深度优先, 广度优先 先序,中序,后序遍历 树, 森林,二叉树互转 递归 转循环 队列 两个栈模拟一个队列 排序 简单排序, 归并排序 ,快排, 桶排 冒泡排序(bubble sort) 鸡尾酒排序(Cocktail sort,双向 ...
分类:
编程语言 时间:
2018-08-17 14:57:06
阅读次数:
150
给出一颗二叉树。找到两个值的最小公共节点。 假设两个值都会在树中出现。假设可能不会出现的话,也非常easy。就查找一遍看两个值是否在树中就能够了。假设不在就直接返回NULL。 基本思想:就是在二叉树中比較节点值和两个值的大小,假设都在一边(左边或者右边)那么就往下继续查找,否则就是都在同一边了,那么 ...
分类:
其他好文 时间:
2017-07-09 13:57:48
阅读次数:
218