gpt4 book ai didi

c++ - 树递归错误

转载 作者:行者123 更新时间:2023-11-30 02:09:25 25 4
gpt4 key购买 nike

从星期天开始调试相同的代码后,我正式放弃并认为是时候让其他人看看了。我花了好几个小时,无法想象我的代码有什么问题。它有点长,但很容易理解,我真的很感激任何帮助——你是我现在唯一的选择。

我想做的是实现一些共同执行此操作的函数:给定一个四叉树,其中每个叶子代表图像的 1 个像素,修剪树以删除或组合相似的颜色。每棵树都有一个 root 节点和 4 个子节点,依此类推。每个节点都有 x,y,width,height 和 element,其中 width 和 height 表示代表该区域的像素 block ,x,y 表示节点的左下角像素,元素是类型像素。每个非叶节点存储其所有子节点的平均颜色。如果某个非叶节点 myNode 与其子叶节点之一的颜色差异大于参数 tol(或 tolerance),则无法剪枝。如果没有这种情况,则进行修剪,这意味着您将删除 myNode 的所有子节点,然后 myNode 将只存储所有节点的平均值它只是被删除了(当最初在代码中计算平均值时,这应该是自动的)。

所以,这是我的代码流:

  • 首先我计算并存储每个节点的平均值到它的元素像素场。
  • 现在一个外部函数在某棵树上调用 pruneSize。 pruneSize 实际上并不修剪,而只是返回修剪后树中剩余的叶子数。
  • 从那里开始,对代码进行注释。基本上在更深层次和信号功能中,我试图做到这一点,如果 orig 由于某种原因不能被修剪,那么现在你必须检查 origs child ,看看它们是否可以被修剪,等等。

问题是我在运行它时没有得到正确的输出。它关闭了大时代。我希望你们中有经验的人可以很容易地发现错误。

(此外,quadtree 类的实现非常完美。其他所有内容都经过测试并且工作正常,所以它与我的普通计算器或 pruneSize 相符。)

最佳答案

我在这里可能是错的(只是浏览了一下,现在无法验证),但据我所知,要在 C++ 中求平方,您需要明确地将一个数字与其自身相乘。执行 A^2 将计算 A XOR 2

关于c++ - 树递归错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5491102/

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