tree
文章平均质量分 54
peanwang
这个作者很懒,什么都没留下…
展开
-
Binary tree problems
前言 阅读了Stanford CS Education Library中的Binary Trees,发现你们的题目很好,很适合初学者练习二叉树.也很适合对递归不熟悉的同学.这篇blog记录下来一些很棒的题目. 递归法则: 设计法则: 1.基准情况:必须总有某些基准情形,它无序递归就能解出 2:不断推进:对于需要递归求解的情形,每一次递归调用都必须要使求解状况朝接近基准情...原创 2018-08-04 22:42:45 · 184 阅读 · 0 评论 -
线索二叉树
线索二叉树: 线索二叉树 #include <stdio.h> #include <stddef.h> #include <stdlib.h> /* The node type from which both the tree and list are built */ struct node { int data; struct node* s...原创 2018-08-05 15:43:03 · 131 阅读 · 0 评论 -
推导二叉树遍历结果
一:简介 二叉树的遍历分为前序遍历,中序遍历,后续遍历。而如果已经知道了二叉树的遍历情况,怎样快速用人脑推导出二叉树的形状呢。本人以不同的遍历情况给出我的看法。 二:说明 本文以3种情况: (1)已知前序遍历和中序遍历 (2)已知中序遍历和后续遍历 (3)已知前序遍历和后续遍历(这种...原创 2018-03-11 15:34:02 · 1101 阅读 · 3 评论 -
伸展树Splay Tree
伸展树 伸展树是自平衡的二叉查找树,伸展树不像AVL树,要时刻保持平衡。伸展树通过分摊保持查找的高效率。 伸展树的基本思想:当一个节点被访问后,它就要进过一系列AVL树旋转被放在根上。 数据局部性 可视化伸展树 http://www.link.cs.cmu.edu/splay/ 这个网站是伸展树的创始人做到一个project。将伸展树可视化。学伸展树的时候可以看看。...原创 2018-08-28 23:18:26 · 397 阅读 · 0 评论 -
Tree : Top View
Abstract 做了一道题Tree : Top View。下面是解题报告。 Top View 什么是Top View呢? 在二叉树的父节点,从下看:你能看到的结点的集合即是Top View。 如下图:结点7和13被8挡住了,所以看不到。只能看到 结点4,8,16,20。 怎么确定结点是否被挡在了呢?如上图的po。我是这样定义的:对与一个结点来说:它的左结点位置为该节点位置减一,右结点的位置为该...原创 2018-10-03 21:24:58 · 711 阅读 · 0 评论 -
二叉树的遍历-非递归
Pseudo Code: Create a Stack. Push the root into the stack and set the root = root.left continue till it hits the NULL. If root is null and Stack is empty Then return, we are done. Else Pop the top Nod...原创 2018-11-20 11:05:16 · 214 阅读 · 0 评论 -
Lowest Common Ancestor in a Binary Search Tree
求BST两个结点的LCA 因为是BST:所以可以使用BST的性质去找LCA。 ①左儿子的值小于父亲的值 ②右儿子的值大于父亲的值。 所以对于结点1 Node1,结点2 Node2 的LCA:其LCA结点的值一定大于于Node1的值,小于Node2的值。 所以寻找LCA就变得很容易。从root根结点开始遍历:遍历过程中:第一个结点的值大于Node1的值,小于Node2的值:就是Node1,Node2...原创 2018-12-18 18:46:24 · 135 阅读 · 0 评论