算法
samker
这个作者很懒,什么都没留下…
展开
-
最大环 poj_3895 java
题: poj3895求组成的最大环的边数=>最大环是 4 (2-6-5-7-2)思路: bfs 或者 dfs 都可以解决记录每次访问点的个数, 用arr[] 标记当前点是可能组成的环上的第几个点当前点 - 字节点放问点 ,得到的最大值就是最大的环值maxAnswer = Math.max(maxAnswer, findNode[a[0]]-findNode[arrlist.get(i)]+1); package tuLun;import java.io.BufferedRead原创 2021-10-31 15:45:04 · 415 阅读 · 0 评论 -
迪杰斯特拉,最短路径
1 问题描述何为Dijkstra算法?Dijkstra算法功能:给出加权连通图中一个顶点,称之为起点,找出起点到其它所有顶点之间的最短距离。Dijkstra算法思想:采用贪心法思想,进行n-1次查找(PS:n为加权连通图的顶点总个数,除去起点,则剩下n-1个顶点),第一次进行查找,找出距离起点最近的一个顶点,标记为已遍历;下一次进行查找时,从未被遍历中的顶点寻找距离起点最近的一个顶点, 标记为已遍历;直到n-1次查找完毕,结束查找,返回最终结果。2 解决方案3 题意: 例题: POJ_2387原创 2021-10-31 15:40:57 · 231 阅读 · 0 评论 -
CCW 算法( POJ_1912)
判断点和线的位置关系向量叉积是用来判断两个向量之间方向的他的计算方法如下:假设两个向量分别为a-> =(x1,y1),b-> =(x2,y2),则a向量 与b向量 的叉积如下定义:a ×b =x1⋅y2−x2⋅y1其中,符号×用来表示向量叉积运算。而a向量 和b向量 都是以坐标原点为起点,以上面给出的坐标:(x1,y1), (x2,y2 为终点的两个向量。根据这个叉积的算法,我们不难得到以下规律:若a ×b >0,则a 在b 的顺时针方向若a ×b <0,则a.原创 2021-10-31 15:34:39 · 772 阅读 · 0 评论