自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 最短路算法

最短路算法笔记Dijkstra算法​ Dijkstra算法基于贪心思想,它适用于所有边长的长度都是非负数的图。当边长zzz都是非负数时,全局最小值不再可能被其他节点更新,故在第iii步中选出的节点x必然满足:dist[x]dist[x]dist[x]已经是起点到xxx的最短路径。我们不断的选择全局最小值进行标记和扩展,最终可以得到起点1到每个节点的最短路径的长度。#include <b...

2020-01-18 10:45:09 111

原创 字符串hash

字符串hash​ 字符串hash函数把一个长度任意的字符串映射成一个非负整数,并且其冲突的概率几乎为零。​ 取一固定值PPP,把字符串看成P进制数,并分配一个大于0的数值,代表每种字符。一般来说,我们分配的数值都远小于PPP。例如,对于小写字符构成的字符串,可以令a=1,b=2,...,z=26a=1,b=2,...,z=26a=1,b=2,...,z=26。取一个固定值MMM,求出该PPP进...

2020-01-18 10:44:31 117

原创 线段树笔记

线段树笔记线段树是一种基于分治思想的二叉树结构,用于在区间上进行信息统计。与按照二进制位(2的次幂)进行区间划分的树状数组相比,线段树是一种更加通用的结构:线段树每个节点都代表一个区间线段树具有唯一的根节点,代表的区间是整个统计范围,如[1, N]线段树的每一个叶节点都代表一个长度为1的元区间[x, x]对于每个内部节点[l, r],它的左节点是[l, mid], 右节...

2020-01-18 10:43:57 118

原创 桶排序

桶排序class Solution {public: class Bucket{ public: bool used = false; int maxval = INT_MIN; int minval = INT_MAX; }; int mins = INT_MAX, maxn =...

2020-01-18 10:41:12 136

原创 数论笔记

1. 质数1.1 质数的判定试除法若一个正整数NNN为合数(除了能被1和自身以外的数整除),则存在一个能整除NNN的数TTT,其中2≤T≤N2\leq T\leq \sqrt N2≤T≤N​。bool is_prime(int n){ if (n < 2) return false; for (int i = 2; i < sqrt(n); ++ i ) ...

2020-01-18 10:40:35 197

原创 前缀和与差分

前缀和与差分一维前缀和void init(){ for (int i = 1; i <= n; ++ i ) { f[i] = f[i-1] + value[i-1]; }}int get(int l, int r){ return f[r] - f[l-1];}二维前缀和void init(){ for (in...

2020-01-18 10:39:37 125

原创 快速选择算法

快速选择算法算法思想:随机选择一个枢轴。使用划分算法将枢轴放在数组中的合适位置 pos。将小于枢轴的元素移到左边,大于等于枢轴的元素移到右边。比较 pos 和 N - k 以决定在哪边继续递归处理。int partition(vector<int>& nums, int l, int r){ int left = l+1, right = r; ...

2020-01-18 10:39:04 164

原创 并查集

并查集​ 朴素并查集:void init(){ for (int i = 1; i <= n; ++ i ) fa[i] = i;}int get(int x){ if (fa[x] == x) return x; return fa[x] = get(fa[x]);}void merge(int x, int y){ fa[get(x)...

2020-01-18 10:38:07 118

原创 数位DP

数位DP用HDU的一道题目作为实例不要62,这道题是不带前导零的一道实例。#include <bits/stdc++.h>using namespace std;int dp[20][2];int a[20];int dfs(int pos, int pre, int state, bool limit){ if (pos == -1) return 1; ...

2020-01-18 10:36:15 77

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除