所有使用分而治之法的算法是否都使用递归函数?或者不一定?
答案 0 :(得分:0)
二元搜索是D& C范例的应用。 (如下所示:分成两半并继续进入可能包含密钥的一半。)
它可以递归地或非递归地实现。
当你需要同时保持"一半时,递归很方便。拆分并将它们排队等待以后处理。常见的情况称为尾递归,当您只对其中一半进行排队并立即处理另一半时。在二进制搜索中,您只需删除其中一半。
从广义上讲,D& C是所有算法的父亲,当被称为"将问题分解为更容易的同类子问题"。该定义还包含迭代解决方案,通常在没有递归的情况下实现。