TB椰程 TypeBuddy 打字搭子

程序时间复杂度分析

CSP-J · 编程模板 · 片段 · cpp · 难度 2/5 · 共 382 字

数循环层数乘规模,识别 O(n)/O(n^2)/O(log n)

  • 初赛专项
  • 时间复杂度

前置内容

正文

// 时间复杂度分析
// 数循环层数乘每层规模
// 常见:O(n)、O(n^2)、O(n log n)
// 递归看每层工作量与深度
#include <cstdio>
int n, s = 0;
int main() {
    scanf("%d", &n);
    // 单层循环:O(n)
    for (int i = 1; i <= n; i++) s++;
    // 双层循环:O(n^2)
    for (int i = 1; i <= n; i++)
        for (int j = 1; j <= n; j++) s++;
    // 折半循环:O(log n)
    for (int i = n; i > 0; i /= 2) s++;
    printf("%d", s);
    return 0;
}

CSP-J · 编程模板的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK