2023.7.11 学习笔记

写在前面

解题的三大步骤

1条件提取/需求分解

2模块化处理

3优化

一.二分

1. 二分查找( nlogn

STL:

  • lower_bound(begin, end, x):

    一个大于等于x的值的地址

  • lower_bound(begin, end, x, greater):

    最后一个小于x的值的地址

  • upper_bound(begin, end, x):

    第一个大于x的值的地址

(T(n) = T(\frac{n}{2}) +1)

2. 二分答案( \text{判断复杂度} \times \log (\text{数据范围}))

  • 1 单调性—>可行性

  • 2范围已知

  • 3明确知道某答案是否可行

二.分治

解题步骤:

  • 何为边界
  • 如何分解
  • 如何合并

例子:

小组成员:邵品渊, 邵品砚, 顾天泽, 蒋佳成

3 个赞