【问题标题】:Expected Percentage of Red Nodes in Left Leaning Red Black Tree Program?左倾红黑树程序中红色节点的预期百分比?
【发布时间】:2016-10-23 05:20:12
【问题描述】:

我从教科书中修改了一个左倾红黑树程序,以在插入 N 个 1 到 N 范围内的不同整数进行赋值后计算红色节点的数量。当使用由 Java 类 Random 创建的随机整数数组时,我始终获得 52%-54% 的百分比,N 为 10^4、10^5 和 10^6。

这是在可接受的范围内还是应该低于这个范围?我在脑海里想了想,我觉得它应该更低,所以我想知道我是否犯了错误。

感谢您的帮助!

【问题讨论】:

    标签: java red-black-tree


    【解决方案1】:

    这个百分比肯定会更低,大约 30-35%。你用什么算法来计算你的百分比?

    【讨论】:

    • 是的,这是因为我天真地在 java 中为我的测试数组使用了 random 函数,这并没有达到预期的效果。我改为使用洗牌算法对 1 到 N 个整数的数组进行洗牌,以创建一个随机数组并收到大约 25% 的结果,我认为这更准确。
    • 感谢您的回复!
    猜你喜欢
    • 2017-03-02
    • 2012-11-01
    • 1970-01-01
    • 2021-05-22
    • 2014-01-13
    • 2014-03-16
    • 1970-01-01
    • 2011-09-18
    • 2016-09-26
    相关资源
    最近更新 更多