最新 最热

二叉树:将二叉树中的所有节点的左右子树进行交换

二叉树遍历的简单应用struct node {int val;node *left, *right;};node *swapSubTree(node *root) {if (!root) return NULL;else {//交换的过程node *tmp = root->left;...

2022-02-24
0

二叉树:前序与后序、前序与中序以及中序与后序相同、相反的特征

一、前序序列与后序序列 1.前序序列和后序序列相同 空树或者只有根节点的二叉树。

2022-02-24
0

判断两棵二叉树是否相同

struct node {int val;node *left, *right;};bool isSame(node *a, node *b) {if (!a && !b) return true;if ((!a && b) || (!b && a)) return false;if (...

2022-02-24
0

判断二叉树是否为满二叉树

满二叉树的定义:一个高度为h,并且含有2^h - 1个节点的二叉树称为满二叉树,下文称呼满二叉树为FBT。

2022-02-24
0

判断二叉树是否为完全二叉树

完全二叉树的定义(王道):设一棵高度为h,有n个节点的二叉树,当且仅当其中每一个节点都与高度为h的满二叉树编号为1~n的节点一一对应时,称为完全二叉树。下文称呼完全二叉树为CBT。...

2022-02-24
0

判断二叉树是否为排序二叉树

排序二叉树的递归定义: (1)空树。 (2)是由根节点、左子树和右子树组成。满足左子树上的所有节点的值都小于根节点的值,右子树上的所有节点的值都大于根节点的值。同时左子树和右子树都是排序二叉树(递归定义)。...

2022-02-24
0

判断二叉树是否为平衡二叉树

平衡二叉树的递归定义: (1)空树。 (2)他的左子树和右子树都是平衡二叉树,并且左子树和右子树的高度差的绝对值不会超过1(<=1)。

2022-02-24
0

数据结构:选择类型排序的总结(考研)

选择排序包括:选择排序,双选择排序以及堆排序。 选择排序的核心是每一趟排序中查找最小值或者最大值的索引,然后与边界的位置进行交换。例如当前待排序的元素值为a[i],设置最小值所对应的索引为minIndex,初始值就为i。这样...

2022-02-24
0

二叉堆类模板的实现以及使用它进行堆排序

二叉堆:二叉堆一棵完全二叉树,从递归的定义来讲,对于完全二叉树的任何一个节点,其左孩子要么是空树要么是一个完全二叉树,右孩子同上。

2022-02-24
0

BST(二叉搜索/排序树)类模板的实现

BST树的递归定义: (1)BST树是一棵空树。 (2)BST树由根节点、左子树和右子树。左子树和右子树分别都是一棵BST树。

2022-02-24
0