算法初级——二叉树的前驱结点

/* * 前驱节点,中序遍历的前面的节点 * 如果有左子树,那么就是左子树上最右的节点,如果没有左子树,那么一起向上移动,直到该节点位于右子树, */ public class 二叉树的前驱节点 { public static class Node { public int value; public Node left; public Node right; p

- 阅读全文 -

算法初级——二叉树的后继节点

在二叉树中找到一个节点的后继节点 【题目】 现在有一种新的二叉树节点类型如下: public class Node { public int value; public Node left; public Node right; public Node parent; public Node(int data) { this.value = data; }} 该结构比普通二叉树节点结构多了一个指向

- 阅读全文 -

算法初级——直观打印二叉树

如何直观的打印一颗二叉树 public class 直观打印二叉树 { public static class Node { public int value; public Node left; public Node right; public Node(int data) { this.value = data; } } publ

- 阅读全文 -

算法初级——二叉树的遍历

实现二叉树的先序、中序、后序遍历,包括递归方式和非递归方式 /* * 二叉树的遍历,二叉树每个节点在遍历的过程中访问三次,第一次访问打印为先序遍历,第二次访问打印为中序打印,第三次访问打印为后序打印。 */ import java.util.Stack; public class 二叉树的遍历 { public static class Node{ public int value

- 阅读全文 -