二叉树的创建、遍历、查找、删除二叉树的创建、遍历、查找、删除
目录目录
二叉树结构的创建:
二叉树的遍历:
二叉树的查找:
二叉树的删除:
我们最初学习数据结构的时候,肯定是先从线性结构和链式结构讲起,回顾一下他们的特点。
线性结构以数组为例,它通过下标的方式访问元素,访问速度很快,但是当我们向数组中插入或删除某个元素时,会将插入位置的元素整体移动,从而造成效率低下。
链式结构以单链表为例,它在插入或删除元素时,只改变链表的指向并且不移动元素,能够解决线性结构插入或删除元素效率不足的问题,但是当我们需要访问某个元素
时,只能从单链表头依次循环直到找到待访问元素为止,因此访问元素效率低下。
那么有没有哪种数据结构,既可以提高访问元素的速度,又可以提高插入或删除元素的效率呢?
它来了,能够提高数据存储和读取效率的树来了。以二叉排序树为例,它既可以保证数据的检索速度,又能够保证数据的插入、删除、修改的速度。
那么什么是二叉树呢? 每个节点最多只能有两个子节点的一种树称为二叉树。
二叉树又有满二叉树和完全二叉树:
有了二叉树的概念,就要用代码来实现它。
二叉树结构的创建二叉树结构的创建::
二叉树拥有左右结点和父结点,根据这个特点来创建下图所示的二叉树结构。
创建具有左右结点的单个结点:
class HeroNode{
private int no;
private String name;
private HeroNode left; // 左结点
private HeroNode right; // 右结点
评论10
最新资源