算法的时间复杂度,其实就是:当数据变多时,这个算法要花多少“步骤”去完成。它关心的是“步骤会变快还是变慢”。
它真正依赖的只有两个因素:
数据状态 👉 就像整理衣服,如果衣服本来就叠好放在柜子里,你很快就能整理完;但如果衣服全都乱扔在地上,你要多花很多步骤。
问题规模 👉 就像你要整理 10 件衣服和整理 1000 件衣服,肯定步骤数量完全不同,数据量越大,步骤越多。
而另外两个选项,其实不属于时间复杂度:
处理器速度 👉 就像你手快还是手慢。虽然影响整理速度,但“步骤数量”没变。算法复杂度只看步骤数量,不管你手快不快。
程序占空间 👉 就像衣柜大还是小,能放多少衣服,这是“空间复杂度”,不是“时间复杂度”。
算法复杂度分为时间复杂度和空间复杂度。其作用: 时间复杂度是指执行算法所需要的计算工作量;而空间复杂度是指执行这个算法所需要的内存空间。故本题选AC。