其他分享
首页 > 其他分享> > 软件工程博客学习心得体会

软件工程博客学习心得体会

作者:互联网

如果要学习软件工程,就必须学会如何系统地思考,养成良好的编码习惯,必须了解软件工程的目标、过程和原理:
通过一段时间在博客园以及CSDN博客上的学习,无论是文章的深度以及广度,博主代码间透露出的良好代码规范都给了我极大的启示。

例如我在CSDN博客上曾经学习过的数据结构-二叉树部分,博客原链接:https://blog.csdn.net/hellowd123/article/details/99692395

博主先列举了平衡二叉树,满二叉树,完全二叉树和扩充二叉树的概念定义,下面开始通过代码进行具体讲解。

1、完全二叉树

若设二叉树的高度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第h层有叶子结点,并且叶子结点都是从左到右依次排布,这就是完全二叉树。

一维数组可以作为完全二叉树的存储结构,堆排序使用的数据结构就是完全二叉树

2、满二叉树

国际标准定义是除了叶结点外每一个结点都有左右子结点的二叉树

国内的定义是:除了叶结点外每一个结点都有左右子叶且叶子结点都处在最底层的二叉树。很显然,按照这个定义,上面的图示二叉树就不是满二叉树。

3、扩充二叉树

扩充二叉树是对已有二叉树的扩充,扩充后的二叉树的节点都变为度数为2的分支节点。也就是说,如果原节点的度数为2,则不变,度数为1,则增加一个分支,度数为0的叶子节点则增加两个分支。

4、平衡二叉树

 是一棵空树或它的任意节点的左右两个子树的高度差的绝对值不超过1

标签:度数,结点,心得体会,博客,软件工程,二叉树,扩充,节点
来源: https://www.cnblogs.com/TerranConfederacy/p/14464326.html