算法
文章平均质量分 70
outsider0007
github:https://github.com/colin0000007
展开
-
DoubleArrayTrie(DAT)双数组字典树原理解读,golang/go语言实现
欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体...原创 2020-03-15 00:12:06 · 918 阅读 · 0 评论 -
代价一致搜索java实现
上人工智能导论课要求实现这个算法,基本没有找到什么对这个算法的解释,ppt也没说细节,就随便写写了,目前只测试了两个图。思路:如上图所示(这里以有向图举例只是为了方便),需要找到从0到3的最短路径:代价一致的做法,维护一个边缘集,用优先队列存储,步骤:1.初始边缘集为0的所有后继节点,也就是{1(80),4(90)},()中是到节点的路径长2.从边缘集合中取出路径值最小的节...原创 2018-09-21 00:27:21 · 2118 阅读 · 2 评论 -
csp ccf 201609-3 第三题炉石传说java 100
整个题目还是挺简单的,以下是java代码!可以直接提交import java.util.HashMap;import java.util.Map;import java.util.Scanner;//题目炉石传说public class Main{ public static void main(String[] args) throws Exception { Scanner s...原创 2018-03-09 09:02:55 · 544 阅读 · 0 评论 -
csp ccf 201612-3 权限查询java 100分
问题描述试题编号:201612-3试题名称:权限查询时间限制:1.0s内存限制:256.0MB问题描述:问题描述 授权 (authorization) 是各类业务系统不可缺少的组成部分,系统用户通过授权机制获得系统中各个模块的操作权限。 本题中的授权机制是这样设计的:每位用户具有若干角色,每种角色具有若干权限。例如,用户 david 具有 manager 角色,manager 角色有 crm:...原创 2018-03-07 23:11:31 · 351 阅读 · 1 评论 -
最小生成树-普利姆算法
详细的说明代码中已经差不多了,不再赘述:用到的图如下:#include <stdio.h>#include <stdlib.h>typedef struct e{ int otherVertex;//保存另一条边的标号 int edgeWeight;//保存另一条边的权重} Edge;void prim(int *edge,int vertexNum...原创 2018-02-14 18:53:56 · 994 阅读 · 0 评论 -
java实现佛洛依德算法
所用到的测试图:package algorithm;/** * 弗洛伊德算法思想: * Ak(i,j)意思是i点到j点经过一系列点,但是点下标最多不超过k * 情况1:如果Ak(i,j)不经过k,那么Ak(i,j)=Ak-1(i,j); * 情况2:如果Ak(i,j)经过k,那么Ak(i,j)=Ak-1(i,k)+Ak-1(k,j); * 所以Ak(i,j) = min{Ak-1...原创 2018-02-14 18:51:15 · 508 阅读 · 0 评论 -
实现最长公共子序列问题
问题描述: 最长公共子序列(LCS)是一个在一个序列集合中(通常为两个序列)用 来查找所有序列中最长子序列的问题。这与查找最长公共子串的问题同 的地方是:子序列不需要在原序列中占用连续的位置。而最长公共子串 (要求连续)和最长公共子序列是不同的。#include <stdio.h>#include <stdlib.h>#include <stri...原创 2018-02-14 18:48:46 · 220 阅读 · 0 评论 -
实现01背包问题
0-1背包问题:给定一定承重的背包,给定一系列的物品,每种物品只有一个不重复,每个物品要么装入要么不装入,在一定数量下的物品如何确定背包所达到的最大价值,动态规划思想:设a(i,j)为背包承重为j,物品数量为i时的最大价值,设1~i物品的重量为w1~wi,物品的价值是v1~vi那么满足以下条件 1.如果a(i,j)不包含最后一个物品,那么a(i,j)=a(i-1,j); 2 如果a(...原创 2018-02-14 18:45:36 · 322 阅读 · 0 评论 -
java实现迪杰斯特拉单源最短路径算法
用到的测试图package algorithm;import java.io.FileInputStream;import java.util.HashMap;import java.util.Map;import java.util.Map.Entry;import java.util.Scanner;import java.util.Set;/** *迪杰斯特拉算法 *...原创 2018-02-14 18:42:44 · 655 阅读 · 0 评论 -
csp ccf 2017年12月份第4/四题 java实现 90分
题目:试题编号:201712-4试题名称:行车路线时间限制:1.0s内存限制:256.0MB问题描述:问题描述 小明和小芳出去乡村玩,小明负责开车,小芳来导航。 小芳将可能的道路分为大道和小道。大道比较好走,每走1公里小明会增加1的疲劳度。小道不好走,如果连续走小道,小明的疲劳值会快速增加,连续走s公里小明会增加s2的疲劳度。 例如:有5个路口,1号路口到2号路口为小道,2号路口到3号路口为...原创 2018-02-22 23:19:23 · 490 阅读 · 0 评论 -
csp ccf输入字符串的坑-2017 9 第三题json字符串处理
做了一道csp ccf 2017.9处理json字符串的一道题,用的java语言,提交上去一直是0分,自以为自己写的代码没问题(后来证实确实如此),因为这里面涉及到大量字符串的输入,在java中使用scanner输入了整数后,(第一个坑)如果再使用输入字符串的nextLine是会有问题的,因为nextLine遇到换行就会结束,,这到这个问题我还特意去查了下next()和nextLine()原创 2017-11-30 23:24:35 · 1419 阅读 · 0 评论