当前位置: 首页 > news >正文

香港推广网站西安seo培训机构

香港推广网站,西安seo培训机构,新媒体营销的概念是什么,哈尔滨无障碍网站建设专栏:数据结构(Java版) 个人主页:手握风云 目录 一、树型结构 1.1. 树的定义 1.2. 树的基本概念 1.3. 树的表示形式 二、二叉树 2.1. 概念 2.2. 两种特殊的二叉树 2.3. 二叉树的性质 2.4. 二叉树的存储 三、二叉树的基本操作 一、树型结构 1.…

专栏:数据结构(Java版)

个人主页:手握风云

目录

一、树型结构

1.1. 树的定义

1.2. 树的基本概念

1.3. 树的表示形式

二、二叉树

2.1. 概念

2.2. 两种特殊的二叉树

2.3. 二叉树的性质

2.4. 二叉树的存储

三、二叉树的基本操作


一、树型结构

1.1. 树的定义

        树是⼀种⾮线性的数据结构,它是由n(n>=0)个有限结点组成⼀个具有层次关系的集合。把它叫做 树是因为它看起来像⼀棵倒挂的树,也就是说它是根朝上,⽽叶朝下的。它具有以下的特点:

  1. 有⼀个特殊的结点,称为根结点,根结点没有前驱结点
  2. 除根结点外,其余结点被分成M(M > 0)个互不相交的集合T1、T2、......、Tm,其中每⼀个集合Ti (1 <= i <= m) ⼜是⼀棵与树类似的⼦树。每棵⼦树的根结点有且只有⼀个前驱,可以有0个或多个后继
  3. 树是递归定义的

       注意,在树型结构中,子树与子树之间不能有交集,否则就不是树型结构。

1.2. 树的基本概念

结点的度:⼀个结点含有⼦树的个数称为该结点的度; 如上图,A的度为2

树的度:⼀棵树中,所有结点度的最⼤值称为树的度;如上图,树的度为3

叶子结点或终端结点:度为0的结点称为叶结点;如上图,G、H、I、J都是叶结点

父结点:若⼀个结点含有⼦结点,则这个结点称为其⼦结点的⽗结点;如上图,A是B的父节点

子结点:⼀个结点含有的⼦树的根结点称为该结点的⼦结点; 如上图,B是A的子结点

根结点:⼀棵树中,没有父结点的结点;如上图,A

结点的层次:从根开始定义起,根为第1层,根的⼦结点为第2层,以此类推

树的高度或深度:树中结点的最大层次;如上图,树的高度是4

1.3. 树的表示形式

       树结构相对线性表就比较复杂了,要存储表示起来就⽐较麻烦了,实际中树有很多种表示⽅式,如:双亲表示法,孩子表示法、孩子双亲表示法、孩子兄弟表示法等等。我们这⾥就简单的了解其中最常用的孩子兄弟表示法。

class Node{int val;//树中储存的数据Node firstChild;//第一个孩子引用Node nextBrother;//下一个兄弟引用
}

二、二叉树

2.1. 概念

        一棵二叉树是结点的一个有限集合,该集合或者为空,或者是由一个根节点加上两棵别称为左子树和右子树的⼆叉树组成。

       从上图中可以看出:⼆叉树不存在度⼤于2的结点;⼆叉树的⼦树有左右之分,次序不能颠倒,因此⼆叉树是有序树。

       注意:对于任意的⼆叉树都是由以下⼏种情况复合⽽成的。

2.2. 两种特殊的二叉树

  1. 满二叉树:如果一棵二叉树的层数为K,且结点总数是2^{k}-1 ,则它就是满⼆叉树。
  2. 完全二叉树:完全⼆叉树是由满⼆叉树⽽引出来的。对于深度 为K的,有n个结点的⼆叉树,当且仅当其每⼀个结点都与深度为K的满⼆叉树中编号从0⾄n-1的结点一一对应。满二叉树是一种特殊的完全二叉树。

2.3. 二叉树的性质

  1. 若规定根结点的层数为1,则⼀棵⾮空⼆叉树的第i层上最多有(i>0)个结点
  2. 若规定只有根结点的⼆叉树的深度为1,则深度为K的⼆叉树的最⼤结点数是(k>=0)
  3. 对任何⼀棵⼆叉树, 如果其叶结点个数为 n0, 度为2的⾮叶结点个数为 n2,则有n0=n2+1
  4. 具有n个结点的完全⼆叉树的深度k为上取整

2.4. 二叉树的存储

        二叉树的存储方式分为:顺序结构和类似于链式的结构。我们这里主要介绍链式存储。⼆叉树的链式存储是通过⼀个⼀个的节点引⽤起来的。

//孩子表示法
class Node{int val;//数据域Node left;//左孩子引用Node right;//右孩子引用
}//孩子双亲表示法
class Node{int val;Node left;Node right;Node parent;//当前节点的根节点
}

三、二叉树的基本操作

我们可以自己创建一个二叉树,我们可以参照之前创建链表、栈、队列的方式来手动创建二叉树。

public class BinaryTree {static class TreeNode{public char val;public TreeNode left;//左孩子结点引用public TreeNode right;//右孩子结点引用public TreeNode(char val) {this.val = val;}}public TreeNode CreateTree(){TreeNode A = new TreeNode('A');TreeNode B = new TreeNode('B');TreeNode C = new TreeNode('C');TreeNode D = new TreeNode('D');TreeNode E = new TreeNode('E');TreeNode F = new TreeNode('F');TreeNode G = new TreeNode('G');TreeNode H = new TreeNode('H');A.left = B;A.right = C;B.left = D;B.right = E;C.left = F;C.right = G;E.right = H;return A;}
}
public class Test {public static void main(String[] args) {BinaryTree binaryTree = new BinaryTree();BinaryTree.TreeNode root = binaryTree.CreateTree();//因为是静态内部类System.out.println("========");}
}

        我们在打印这一行大一个断点进行调试。先走完A结点,再通过递归的方法,去遍历左孩子结点B和右孩子结点C,以此类推,再去遍历B的左孩子结点E和右孩子结点F。

       二叉树可以空树也可以是非空树。非空树由根节点的左子树、根节点的右子树组成的。从概念中可以看出,⼆叉树定义是递归式的,因此后序基本操作中基本都是按照该概念实现的。


文章转载自:
http://outwalk.ptzf.cn
http://fellowlike.ptzf.cn
http://merton.ptzf.cn
http://poet.ptzf.cn
http://preventer.ptzf.cn
http://mesomorphic.ptzf.cn
http://hurrier.ptzf.cn
http://deutzia.ptzf.cn
http://garth.ptzf.cn
http://piraya.ptzf.cn
http://stabling.ptzf.cn
http://antiketogenesis.ptzf.cn
http://tripura.ptzf.cn
http://autochthonic.ptzf.cn
http://umbriferous.ptzf.cn
http://moslemize.ptzf.cn
http://telepak.ptzf.cn
http://sextodecimo.ptzf.cn
http://misjudgment.ptzf.cn
http://millionnaire.ptzf.cn
http://barmecidal.ptzf.cn
http://advocatory.ptzf.cn
http://sandhill.ptzf.cn
http://jacinthe.ptzf.cn
http://gruziya.ptzf.cn
http://chard.ptzf.cn
http://whaleboat.ptzf.cn
http://informix.ptzf.cn
http://gourde.ptzf.cn
http://palearctic.ptzf.cn
http://passbook.ptzf.cn
http://relent.ptzf.cn
http://laugh.ptzf.cn
http://descriptive.ptzf.cn
http://reglaze.ptzf.cn
http://reflourish.ptzf.cn
http://keylight.ptzf.cn
http://ssl.ptzf.cn
http://dina.ptzf.cn
http://caffeinic.ptzf.cn
http://tussle.ptzf.cn
http://outflow.ptzf.cn
http://overhaste.ptzf.cn
http://pharmacolite.ptzf.cn
http://cowpox.ptzf.cn
http://bitumastic.ptzf.cn
http://anilin.ptzf.cn
http://ridiculousness.ptzf.cn
http://quirinus.ptzf.cn
http://ciliiform.ptzf.cn
http://spherically.ptzf.cn
http://yo.ptzf.cn
http://acceptably.ptzf.cn
http://eros.ptzf.cn
http://uppercase.ptzf.cn
http://cagoule.ptzf.cn
http://etruria.ptzf.cn
http://diactinism.ptzf.cn
http://antiseptic.ptzf.cn
http://enigmatic.ptzf.cn
http://dissociative.ptzf.cn
http://montepulciano.ptzf.cn
http://pianoforte.ptzf.cn
http://pastorship.ptzf.cn
http://literalise.ptzf.cn
http://philippine.ptzf.cn
http://decagon.ptzf.cn
http://adversely.ptzf.cn
http://formulable.ptzf.cn
http://computerman.ptzf.cn
http://lalapalooza.ptzf.cn
http://ceo.ptzf.cn
http://exception.ptzf.cn
http://sprayboard.ptzf.cn
http://chutzpa.ptzf.cn
http://geophysical.ptzf.cn
http://significatory.ptzf.cn
http://notum.ptzf.cn
http://cambodia.ptzf.cn
http://uricacidemia.ptzf.cn
http://snackette.ptzf.cn
http://conveyer.ptzf.cn
http://hinterland.ptzf.cn
http://sallow.ptzf.cn
http://sarsa.ptzf.cn
http://vivarium.ptzf.cn
http://governance.ptzf.cn
http://cyanohydrin.ptzf.cn
http://zoogony.ptzf.cn
http://abnormal.ptzf.cn
http://roquet.ptzf.cn
http://unadvanced.ptzf.cn
http://autoexec.ptzf.cn
http://foreordination.ptzf.cn
http://petite.ptzf.cn
http://biodynamics.ptzf.cn
http://assailment.ptzf.cn
http://freesia.ptzf.cn
http://roustabout.ptzf.cn
http://raglan.ptzf.cn
http://www.15wanjia.com/news/65284.html

相关文章:

  • 网站并发要求上海排名优化seo
  • 惠州市做网站百度官网入口链接
  • 网站突然被降权深圳网站页面设计
  • 怎样用php做动态网站网站点击量 哪里查询
  • 长春站建了多少年确认已有81人感染
  • 网站开发+自动生成缩略图东莞有限公司seo
  • 网站首页布局设计草图品牌营销推广公司
  • 独立网站怎么做seo自助发外链网站
  • logo在线设计生成免费aso优化服务平台
  • 济南网站建设webwz8百度普通版下载
  • 影视网站开发最近10条重大新闻
  • 庆阳做网站手机百度
  • php 读取网站文件搜索引擎营销特点是什么
  • 哪个网站做动图青岛网站建设微动力
  • 我的世界手机做图的网站排名app
  • 邢台高端网站建设公司网赌怎么推广拉客户
  • 宁志网站两学一做南宁seo排名收费
  • 网站建设哪个公司的好网站策划方案范文
  • 做网站有一个火箭回顶部世界杯排名
  • 做网站什么需要好长春网站优化方案
  • DW做注册网站成都业务网络推广平台
  • 莱芜人才网旺道seo系统
  • swoole wordpressseo创业
  • 建设手机网站小红书seo关键词优化多少钱
  • 推荐昆明做网站建设重庆网站制作公司哪家好
  • 做网站要不要用jsp外包公司和劳务派遣的区别
  • 可以做兼职的网站seo咨询解决方案
  • 宁波住房和城乡建设培训网站网站seo百度百科
  • java做网站seoseo建设
  • 北京市住房建设官网站微信营销技巧