进一步学习:
1.具体数学
2.离散数学
3.布尔代数
4.Matroid
5.(逻辑学)你需要学会的技能:
解最值不等式
严格弱序
- It has to be antisymmetric. This means that for operator <: If x<y is true, then y<x is false. This means that for a predicate op(): If op(x,y) is true, then op(y,x) is false.
- It has to be transitive. This means that for operator <: If x<y is true and y<z is true, then x<z is true. This means that for a predicate op(): If op(x,y) is true and op(y,z) is true, then op(x,z)is true.
- It has to be irreflexive. This means that for operator <: x<x is always false. This means that for a predicate op(): op(x,x) is always false.
- It has to have transitivity of equivalence, which means roughly: If a is equivalent to b and b is equivalent to c, then a is equivalent to c. This means that for operator <: If !(a<b)&&!(b<a) is true and !(b<c)&&!(c<b) is true.then !(a<c)&&!(c<a) is true. This means that for a predicate op(): If op(a,b), op(b,a), op(b,c), and op(c,b) all yield.false, then op(a,c) and op(c,a) yield false.
STL库要求重载的'<' 运算符
满足严格弱序,否则出现未定义的行为。
可用于贪心的结论
定义二元布尔关系。
可以证明,,有