#1907·hello-algo

2.3 时间复杂度 1. 常数阶 0(1) C语言代码出现多余外部变量 i

Author: mazezenCreated May 18, 2026Updated May 18, 2026

位置: 第2章 第3节 时间复杂度

  1. 常数阶 O(1) 常数阶的操作数量与输入数据大小 无关,即不随着 的变化而变化。

在以下函数中,尽管操作数量 size 可能很大,但由于其与输入数据大小 无关,因此时间复杂度仍为 : /* 常数阶 */ int constant(int n) { int count = 0; int size = 100000; int i = 0; for (int i = 0; i < size; i++) { count++; } return count; }

描述: 这里 for 循环里的 int i = 0 定义了一个新的局部变量 i,它的作用域只在 for 循环内部。 也就是说:

外面的 int i = 0; 并没有被用到,它完全可以省略。 循环结束后,内部的 i 就消失了,外面的 i 仍然存在,但在你的函数里没有用到。

所以 外面的 int i = 0; 可以删掉