摘要:
#include<iostream> using namespace std; const int N = 100010; int n,m; int p[N]; int cnt[N]; //带路径压缩的查找函数 int find(int x){ if(p[x]!=x){ p[x] = find(p[ 阅读全文
posted @ 2020-02-06 17:04
FLydoggie
阅读(175)
评论(0)
推荐(0)
摘要:
并查集是一种十分基础和有用的数据结构,网上有很多讲解的很好的博客,为了便于理解,建议刚接触的人可以将其理解成向量,一组连通的向量就是一个集合,假如要合并两个集合,也就是在两组无关联的向量中增加一条道路,为了方便,我们直接把其中某一组向量的头头直接指向另一组向量的头头。也就是合并操作了。 例题: #i 阅读全文
posted @ 2020-02-06 16:29
FLydoggie
阅读(138)
评论(0)
推荐(0)
摘要:
这道题目很难想到是字典树,如果不是放在字典树单元的话.简单来说,一个整数,是可以转化成为一个32位的二进制数,而也就可以变成长度为32位的二进制字符串.既然如此的话,根据二进制异或的原理:不同得1,否则得0,假如想让这个数字最大,我们就需要使得这个数的二进制表示中从左往右尽可能的取到1,也就是尽量的 阅读全文
posted @ 2020-02-06 15:47
FLydoggie
阅读(288)
评论(0)
推荐(0)
摘要:
又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。 模板题: 代码 #includ 阅读全文
posted @ 2020-02-06 12:38
FLydoggie
阅读(185)
评论(0)
推荐(0)

浙公网安备 33010602011771号