摘要:
描述 解析 二叉搜索树,其实就是节点n的左孩子所在的树,每个节点都小于节点n。 节点n的右孩子所在的树,每个节点都大于节点n。 定义子树的最大最小值 比如:左孩子要小于父节点;左孩子n的右孩子要大于n的父节点。以此类推。 中序遍历 中序遍历时,输出的值,和前一个值比较,如果大,就失败。 代码 当然还 阅读全文
摘要:
Unique Binary Search Trees II leetcode java 【LeetCode】Unique Binary Search Trees II 异构二叉查找树II Unique Binary Search Trees II -- LeetCode 描述 Given n, ge 阅读全文
摘要:
[Leetcode] Unique binary search trees 唯一二叉搜索树 Unique Binary Search Trees leetcode java 描述 Given n, how many structurally unique BST's (binary search t 阅读全文
摘要:
二叉树遍历(前序、中序、后序、层次、深度优先、广度优先遍历) 描述 解析 递归方案 很简单,先左孩子,输出根,再右孩子。 非递归方案 因为访问左孩子后要访问右孩子,所以需要栈这样的数据结构。 1.指针指向根,根入栈,指针指向左孩子。把左孩子当作子树的根,继续前面的操作。 2.如果某个节点的左孩子不存 阅读全文
摘要:
描述 解析 根与根比较,左右子树互相递归比较即可。 代码 阅读全文
摘要:
转载:不止 JDK7 的 HashMap ,JDK8 的 ConcurrentHashMap 也会造成 CPU 100%?原因与解决~ 现象 大家可能都听过JDK7中的HashMap在多线程环境下可能造成CPU 100%的现象,这个由于在扩容的时候put时产生了死链,由此会在get时造成了CPU 1 阅读全文
摘要:
转载:spring多个AOP执行先后顺序(面试问题:怎么控制多个aop的执行循序) 众所周知,spring声明式事务是基于AOP实现的,那么,如果我们在同一个方法自定义多个AOP,我们如何指定他们的执行顺序呢?网上很多答案都是指定order,order越小越是最先执行,这种也不能算是错,但有些片面。 阅读全文
摘要:
原理 堆其实就是一种特殊的完全二叉树,分为大顶堆和小顶堆。 大顶堆就是指父节点 >= 左右孩子结点, 而左右孩子结点之间的大小关系随意。小顶堆反之。 堆排序基本思路 就是先把序列构建成大顶堆序(升序用大顶堆) 然后大顶堆的根节点和最后一个结点交换位置,将最大元素沉到数组末端 这样一来每交换一次就得到 阅读全文
摘要:
http://www.cnblogs.com/jingmoxukong/p/4308823.html (代码) http://blog.csdn.net/middlekingt/article/details/8446552 原理 将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若 阅读全文