您是否有解决此问题的决策树示例。
我想绘制决策树用于回答问题(对于大多数人来说)。但我不知道如何绘制这个决策树。通过示例,我不知道叶子用于表示此算法的内容
问题2
假设你被给予n个红色和蓝色水壶,全部 不同的形状和大小。所有的红色水壶都有不同的数量 水,蓝色的水。而且,对于每个红色水罐,都有一个 持有相同水量的蓝色水壶,反之亦然。
你的任务是找到一组红色和蓝色的水罐 拿着相同水量的水壶。为此,您可以执行此操作 以下操作:选择一对红色和一个水壶 是蓝色的,用水填充红色水壶,然后倒入水中 蓝色水罐。这个操作会告诉你是红色还是蓝色的水罐 可以容纳更多的水,或者它们具有相同的体积。假使,假设 这种比较需要一个时间单位。你的目标是找到一个 算法,进行最小数量的比较来确定 分组。请记住,你不是直接比较两个红色水罐或 两个蓝色的水壶。
1.描述用户Θ(n2)与之比较的确定性算法 将水壶分成两组。 2.证明Ω的下限(nlgn) 解决此问题的算法必须进行的比较次数 使
要解决这个问题,算法必须执行一系列的操作 比较直到它有足够的信息来确定匹配。 我们可以根据决策来查看算法的计算 树。每个内部节点都标有两个水壶(一个红色,一个蓝色) 我们比较,并有三个外围边缘(红色水罐更小,相同 尺寸,或大于蓝色水罐)。叶子标有a 独特的水壶配套。第8章的解决方案:线性排序 时间8-17决策树的高度等于最坏情况 算法必须进行的比较次数来确定 匹配。要绑定该大小,我们首先计算数量 n红色和蓝色水罐可能匹配。如果我们标记红色水罐 从1到n,我们还标记了之前从1到n的蓝色水罐 开始比较,算法的每个结果都可以 表示为集合{(i,π(i)):1≤i≤n且π是一个置换 {1,...,n}},其中包含一对红色水罐(第一个组件) 和匹配的蓝色水壶(第二个组件)。每一个 置换π对应于不同的结果,必须有 完全是n!不同的结果。现在我们可以限制我们的高度h 决策树。每个树的分支因子为3(每个内部 节点最多有三个孩子)最多有3个叶子。自从 决定树必须至少有n!孩子,它遵循3h≥n! ≥ (n / e)n⇒h≥nlog3 n - n log3 e =(n lg n)。所以任何算法 解决问题必须使用(n lg n)比较。