递归的作用

Myth丶恋晨 2023-05-21 13:57 26阅读 0赞

同一个问题可能有多种解法,但是在处理同一个问题的时候,不同的算法有不同的时间复杂度,例如:

题目:

输入一个长度为n的整数序列。接下来再输入m个询问,每个询问输入一对l和r。

对于每个询问,输出原序列中从第l个数到第r个数的和。

简单算法:(时间复杂度是:O(n*m))

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FldzIwMTc_size_16_color_FFFFFF_t_70

递归算法:(时间复杂度是: O(n+m))

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FldzIwMTc_size_16_color_FFFFFF_t_70 1

总结:

简单算法使用两重循环,时间复杂度比加大,而使用递归算法有效降低了时间复杂度。

发表评论

表情:
评论列表 (有 0 条评论,26人围观)

还没有评论,来说两句吧...

相关阅读

    相关 作用

    同一个问题可能有多种解法,但是在处理同一个问题的时候,不同的算法有不同的时间复杂度,例如: 题目: 输入一个长度为n的整数序列。接下来再输入m个询问,每个询问输入一对l和r

    相关 -PTA分形输出

    分形,具有以非整数维形式充填空间的形态特征。通常被定义为“一个粗糙或零碎的几何形状,可以分成数个部分,且每一部分都(至少近似地)是整体缩小后的形状”,即具有自相似的性质。 一

    相关 (一):基本思想

    递归是算法设计中的一种基本而重要的算法。递归方法通过函数调用自身将问题转化为本质相同但规模较小的子问题,是分治策略的具体体现。 递归算法的定义:如果一个对象的描述中包含它本身