gpt4 book ai didi

algorithm - 二叉搜索树改组和重置

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:48:54 24 4
gpt4 key购买 nike

我正在研究二叉树,想知道是否有任何算法可以对树进行洗牌并按级别进行排序?

例如我有一个数组如下:

int[] values = new int[16] {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
BinaryTree<int> tree = new BinaryTree<int>(values);

已经定义了一个创建树的构造函数,但现在我需要创建两个函数,它们将随机播放和重置,所以是否有我可以阅读以实现的算法?

最佳答案

可以使用以下算法从一组值构造随机二叉树:

输入:值

  1. 随机选择一个值作为根节点 - 例如 r。
  2. r->left = 从值 [0..r] 递归构建随机二叉树。
  3. r->right = 从值 [r+1..values.length()-1] 递归构建随机二叉树。
  4. 返回 r.

您是否正在考虑对已创建的二叉树进行混洗?

关于algorithm - 二叉搜索树改组和重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4585533/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com