chapter 2 algorithm analysis (reading notes)

  • 2.1 数学基础
    • 2.1.1 增长率相对大小的四个定义
    • 2.1.2 常见函数的增长速度
  • 2.2 None
  • 2.3 None
  • 2.4 最大子列和问题

2.1 数学基础

2.1.1 增长率相对大小的四个定义

  • O(f(N)) O ( f ( N ) ) :T(N)的 upper bound ,两者有可能相等,是 ” <= ” 的关系;
  • Ω(f(N)) Ω ( f ( N ) ) :T(N)的 lower bound ;
  • Θ(f(N)) Θ ( f ( N ) ) T(N)=Θ(f(N)) T ( N ) = Θ ( f ( N ) ) ,即时间复杂度在同一数量级;
  • o(f(N)) o ( f ( N ) ) : T(N)的 upper bound ,但不包含相等的可能;

2.1.2 常见函数的增长速度

function name
c 常数
logN 对数级
logkN l o g k N 对数的K次幂
N 线性
N logN
N2 N 2 平方级
N3 N 3 立方级
2N 2 N 指数级

- logkN=O(N) l o g k N = O ( N )

2.2 None

2.3 None

2.4 最大子列和问题

  • method 1:求解所有子列和;
  • method 2:divide-and-conquer(分治);
  • method 3:online algorithm,即每输入一个数据即时处理,在任意位置终止,均能给出当前的解;

你可能感兴趣的:(data,structure)