算法期末复习总结

一. 介绍
1.
P:能在多项式时间解决的问题
NP:能在多项式时间内验证的问题
NPC:可能没有多项式时间算法的问题
NP=P+NPC+其他(多数问题)
二. 基本算法设计与分析
渐进分析符号:
这里写图片描述
最常用的关系式:
这里写图片描述
这里写图片描述
三种设计算法的技术:
1.贪心算法(区间调度,硬币问题)
2.分治算法(Karatsuba乘法,矩阵乘法)
master method来求解递归关系式

3.动态规划(带权重的区间调度,背包问题)

三.最大流和最小割问题
Ford-Fulkerson算法寻找最大流和最小割
这里写图片描述

四. 1 线性时间规约
Reduction By Simple Equivalence
独立集问题=点覆盖问题(互证)
Reduction from Special Case to General Case
点覆盖规约到集合覆盖
Reductions via “Gadgets”
3-SAT 可以规约到 INDEPENDENT-SET.
Self-Reducibility
decision problem 和 search problem

四. 3 define of NP
3-sat、Hamiltonian Cycle
P属于NP,但不等同
规约问题:X可以规约到Y满足:(1)X经过多项式个步骤可以转化为Y (2)多项式次调用Y可以解决X
证明若NPC可在多项式时间内解决,那么P=NP
第一个NPC:CIRCUIT-SAT
证明一个问题是NPC:
(1)证明他是NP
(2)选择一个NPC问题
(3)证明该NPC问题可以规约到原问题
3-sat:
这里写图片描述

四.5 sequencing problems
DIR-HAM-CYCLE 可以规约到 HAM-CYCLE.
3-SAT 可以规约到DIR-HAM-CYCLE.
3-SAT 可以规约到 LONGEST-PATH
HAM-CYCLE可以规约到TSP
3D-matching问题?
3-SAT 可以规约到3-COLOR.?
3-SAT可以规约到SUBSET-SUM.
SUBSET-SUM 可以规约到SCHEDULE-RELEASE-TIMES.
SUBSET-SUM 可以规约到PARTITION.

五.近似算法
5.1 load Balancing
不排序:
这里写图片描述
排序:
这里写图片描述
5.2 Center Selection
这里写图片描述
5.3 Vertex Cover
这里写图片描述
这里写图片描述
5.4 LP:V C
这里写图片描述
5.5 Load Balancing Reloaded
这里写图片描述
5.6 Knapsack Problem
SUBSET-SUM 可以规约到KNAPSACK.
俩个问题:
这里写图片描述
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_28897525/article/details/80308143