
数据结构
我是养乐多
这个作者很懒,什么都没留下…
展开
-
堆排序的实现
堆排序的思路: 我们将数组看作一棵树,(顺序存储二叉树), 数组的第n个元素的左子节点下标为 2n+1 数组第n个元素的右子节点下标为 2n+2 数组第n个元素的父节点下标为(n-1)/2 从第一个不为叶子节点开始,判断其和其子节点大小,若子节点比其本身大,则将子节点与其交换。 然后找到该节点上一个节点进行相同操作(在数组中的位置)。 直到找到根节点,即把最大的元素推上了根节点的位置。 将根节点与末尾节点交换,将最大的元素放在数组末尾。下一次不再遍历 图解 代码实现 public clas原创 2020-05-09 00:45:29 · 310 阅读 · 0 评论 -
数据结构:树
1.二叉树概念 二叉树:任何一个节点的子节点不超过2 满二叉树:节点总数为:2∧n-1 (n是树的高度) 完全二叉树:如果二叉树中除去最后一层节点为满二叉树,且最后一层的结点依次从左到右分布,则此二叉树被称为完全二叉树。 2.二叉树的遍历 ...原创 2020-05-06 00:20:15 · 264 阅读 · 0 评论