我要准备的算法

一、数论

数论
  • 1.中国剩余定理
  • 2.欧拉函数
  • 3.欧几里得定理
  • 4.欧几里德辗转相除法求GCD(最大公约数)
  • 5.扩展欧几里得
  • 6.大数分解与素数判定
  • 7.佩尔方程
  • 8.同余定理(大数求余)
  • 9.素数测试
    (1)  一千万以内:筛选法
    (2)  一千万以外:米勒测试法
  • 10.连分数逼近
  • 11.因式分解
  • 12.循环群生成元
  • 13.素数与整除问题
  • 14.进制位.
  • 15.同余模运算

二、计算几何

计算几何
  • 1.基本公式
    (1)  叉乘
    (2)  点乘
    (3)  常见形状的面积、周长、体积公式
    (4)  坐标离散化
  • 2.线段
    (1)  判断两线段(一直线、一线段)是否相交
    (2)  求两线段的交点
  • 3.多边形
    (1)  判定凸多边形,顶点按顺时针或逆时针给出,(不)允许相邻边共线
    (2)  判点在凸多边形内或多边形边上,顶点按顺时针或逆时针给出
    (3)  判点在凸多边形内,顶点按顺时针或逆时针给出,在多边形边上返回0
    (4)  判点在任意多边形内,顶点按顺时针或逆时针给出
    (5)  判线段在任意多边形内,顶点按顺时针或逆时针给出,与边界相交返回1
    多边形重心
    (6)  多边形切割(半平面交)
    (7)  扫描线算法
    (8)  多边形的内核
  • 4.三角形
    (1)  内心
    (2)  外心
    (3)  重心
    (4)  垂心
    (5)  费马点
  • 4.圆
    (1)  判直线和圆相交,包括相切
    (2)  判线段和圆相交,包括端点和相切
    (3)  判圆和圆相交,包括相切
    (4)  计算圆上到点p最近点,如p与圆心重合,返回p本身
    (5)  计算直线与圆的交点,保证直线与圆有交点
    (6)  计算线段与圆的交点可用这个函数后判点是否在线段上
    (7)  计算圆与圆的交点,保证圆与圆有交点,圆心不重合
    (8)  计算两圆的内外公切线
    (9)  计算线段到圆的切点
    (10)  点集最小圆覆盖
  • 5.可视图的建立
  • 6.对踵点
  • 7.经典问题
    (1)  平面凸包
    (2)  三维凸包
    (3)  Delaunay剖分/Voronoi图

你可能感兴趣的:(算法,数论,ACM,计算几何)