线性搜索和递归线性搜索之间有什么区别吗?

时间:2018-06-26 19:34:22

标签: algorithm recursion linear

我熟悉线性搜索的概念并且已经实现了线性搜索,但是最近我遇到了术语递归线性搜索既相同还是两者有区别吗?

1 个答案:

答案 0 :(得分:1)

它们都以O(n)时间运行(尽管递归搜索可能具有较高的恒定因子,因此运行速度较慢)。同样,递归搜索在堆栈上使用O(n)额外的空间,并有堆栈溢出的风险。

可以通过重构代码的优化编译器来缓解这两个问题,例如将递归转换为尾递归,并将其实现为循环。