算法:程序运行的次数
O(1):常数复杂度
printf("hello world");
O(log n):对数复杂度
for (int i = 1; i < n; i = i * 2) { printf(hello world\n); }
O(n):线性时间复杂度
for(int i = 1; i < n; i++) { printf("hello world\n"); }
O(n^2):平方
for(int i = 1; i < n; i++) { for (int j = 1; j < n; j++) { printf("hello world\n"); } }
O(n^3):立方
for(int i = 1; i < n; i++) { for (int j = 1; j < n; j++) { for (int j = 1; j < n; j++) { printf("hello world\n"); } } }
O(2^n):指数
#include <math.h> for(int i = 1; i < pow(2 , n); i++) { printf("hello world\n"); }
O(n!):阶乘
for(int i = 1; i <(n的阶乘); i++) { printf("hello world\n"); }
PS:只看最高复杂度的运算