首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
FrodoBo
获赞
11
粉丝
5
关注
28
看过 TA
336
男
门头沟学院
2025
算法工程师
IP属地:湖南
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑FrodoBo吗?
发布(24)
评论
刷题
FrodoBo
关注TA,不错过内容更新
关注
2020-06-12 21:47
已编辑
门头沟学院 算法工程师
最小生成树概念及其构建(Prim算法、Kruskal算法)
<mark>最小生成树概念及其构建(Prim算法、Kruskal算法)</mark> 基本概念: 由生成树定义可知,无向连通图的生成树不是唯一 的,于是最小生成树的定义诞生,即:无向连通图是一个带权图,她的所有生成树中必有一棵边的权值总和最小的生成树(称为:最小代价生成树,即:最小生成树) 综合来说:Prim算法时间复杂度(O(n^n))当顶点较少时选择; Kruskal算法时间复杂度(O(e*loge))主要耗费在边的排序上,故当边较少时适合选择 一、Prim算法 基本概念: 简单来说:Prim算法就是以点为出发点,通过某一顶点...
0
点赞
评论
收藏
分享
2020-06-12 21:47
已编辑
门头沟学院 算法工程师
走进AC自动机
<mark>走进AC自动机</mark> AC自动机,听这名字就很高大上的亚子,起初还以为就是“AC自动机”。。。。。。开始真正的走进AC自动机了 简单介绍: AC自动机即为:多模匹配问题(像:经典的KMP算法就是单一模式匹配),于是要学会AC自动机,我们必须知道什么是Trie,也就是字典树。Trie树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。 于是就了解字典树是个啥东西 字典树 看图秒懂,有树的基本知识,就能明白字典...
0
点赞
评论
收藏
分享
2020-06-12 21:47
已编辑
门头沟学院 算法工程师
最短路径问题(Dijkstra算法、Floyd算法)
<mark>最短路径问题(Dijkstra算法、Floyd算法)</mark> 将近一天的时间(其实中间大部分看手机去了)终于把最短路径这个经典问题算搞懂了吧 一、Dijkstra算法 简单介绍: Dijkstra算法(即迪杰斯特拉算法)时间复杂度(O(n^2))主要就是解决从单一源点到其他各点的最短路径问题; 基本思路: 设置两个顶点的集合:S和T(S+T=V)(也就是说S和T集合的元素个数的和为:总结点个数),集合S存放已找到最短路径的顶点,集合T存放当前还未找到最短路径的顶点。初始状态时,集合S中只包含源点v0,然后不断地从集合T中...
0
点赞
评论
收藏
分享
2020-06-12 21:48
已编辑
门头沟学院 算法工程师
凸包(Graham扫描法构建)
凸包(Graham扫描法构建) <mark>PS</mark>:我的妈呀,心态爆炸,好像也不太难,看各种模板看的云里雾里的,真的还是自己动手敲来的好,几乎没多久就懂的差不多了。。。。 一个本该寒假就该掌握的知识,居然熬了我几个小时。。。。。。。 这一次还是很好的了解了凸包,以前看群里学长们说,觉得好高大上,好难的样子,仔细了解后发现其实也没有想象中的那么恐怖 凸包基本概念: 这就是一个简单的凸包: 其实凸包求法有很多种:比如<mark>卷包裹法</mark>(时间复杂度O(n*n))、<mark>Graham扫描...
0
点赞
评论
收藏
分享
2020-06-12 21:49
已编辑
门头沟学院 算法工程师
行逻辑链接的矩阵乘法(稀疏矩阵)
<mark>行逻辑链接的矩阵乘法(稀疏矩阵)</mark> 针对稀疏矩阵的乘法,如果按照普通矩阵的乘法进行计算时,时间复杂度必定很大,于是为了尽量降低时间复杂度同时方便运算: 可以设定一个累加器:temp[]数组,用来存放当前行中Cij的值,当前行所以元素全部算出之后,再存放到C.data中 同时参考稀疏矩阵快速转置的思想:稀疏矩阵普通转置与快速转置的链接 设置两个数组num[]与rpot[] 快速矩阵转置利用两个数组: copt[n+1]:表示每列的第一个非零元素在三元组表的位置 num[n+1]:表示每列的非零元素的个数 其中: ...
0
点赞
评论
收藏
分享
2020-06-12 21:48
已编辑
门头沟学院 算法工程师
素数筛(埃氏筛+欧拉筛)
素数筛(埃氏筛+欧拉筛) 居然是一道模板题,院赛时就只知道暴力打表,发现毫无规律,然后暴力预处理,结果肯定TLE。。。。。,学长讲题解时,发现原来是数论中的: 素数筛: 于是赛后去学习了下素数筛,主要有两种方法 一、埃氏筛;二、欧拉筛 一、埃氏筛 思想:对于不超过n的每个非负整数p,删除是p的整数倍的数,当处理完这些数之后,还没被删除的数就是素数。 代码如下: #include<bits/stdc++.h> #define maxn 100 using namespace std; int vis[maxn+10]; //判断是不是素数 int ...
0
点赞
评论
收藏
分享
2020-06-12 21:48
已编辑
门头沟学院 算法工程师
无向图判环(DFS与并查集)
无向图判环(DFS与并查集) ps:一道本校院赛题,最后一小时应该开这道题的,导致到比赛结束这道题都看都没看 XP的校园漫步 题目描述 众所周知,XP学长即将毕业了,所以他觉得在校园里来一次漫步,在学校中有N个标志性的建筑,XP学长并不喜欢走小路,因此他会随机的选择某条大路从某个建筑走到另一个建筑,XP学长当然想要走遍校园内的所有建筑,但他会随机的选择某一条路去漫步,当然XP学长走完某一条路,绝对不会走这一条路,也就是说,如果XP学长当前所在建筑为v,他选择走v->u的某一条大路e,到达u建筑后,他在之后的漫步里不会再选择这条路,但是这仍然可能导致他到达某个建...
0
点赞
评论
收藏
分享
2020-06-12 21:49
已编辑
门头沟学院 算法工程师
稀疏矩阵的普通转置与快速转置
稀疏矩阵的普通转置与快速转置 相关介绍 稀疏矩阵即:由于矩阵大小较大,而大部分元素都是零,非零元素极少,于是稀疏矩阵采用三元组表存储 三元组的表示: typedef struct { int x; //非零元素行 int y; //非零元素列 int v; //非零元素本身的值 }node; //即非零元素所对应的三元组 typedef struct { int nu; //矩阵的行 int mu; //矩阵的列 int tu; //矩阵非零元素的个数 node data[2000]; }matrix; //整个矩阵的所有三元组所组成的结构 例题 ...
0
点赞
评论
收藏
分享
2020-06-12 21:49
已编辑
门头沟学院 算法工程师
C++全排列函数
C++STL中的全排列函数 C++STL中的全排列函数为两个:next_permutation和prev_permutation 其中:next_permutation实现升序,而prev_permutation实现降序 下面以123的全排列为例: #include<cstdio> #include<iostream> #include<algorithm> using namespace std; int main() { int s[3]={1,2,3}; /**下面为next_permutation的用法*/ do { printf(&q...
0
点赞
评论
收藏
分享
1
2
关注他的用户也关注了:
牛客网
牛客企业服务