Go教程

算法algo_tips、坑点

本文主要是介绍算法algo_tips、坑点,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

catalog

  • 并查集
  • 快速幂

并查集

1, 对于merge(a, b)这个操作
	如果只是记录联通性,即便a和b已经在同一个集合里,则你继续执行也没有问题
	但是,如果涉及“记录集合大小cont”,就错了!!!
	当涉及集合cont时,一旦a和b,已经在同个集合里,就必须continue掉!!!
	否则,cont重复累加,肯定会出错的

快速幂

1,  假设需要调用1e7次,求2^x这个操作(x <= 1e7)
	I: 如果你使用KMI,则是1e7 * log(x) 是会超时的!!!
	II: 我们需要O(1)求出2^x,即提前用数组来预存
		 poww[0] = 1;
		 poww[i] = poww[i - 1] * 2
		 "即此时,已经完全不需要kmi这个操作了!!!"
		 "就只是一个,很简单的,for循环预处理"
		
这篇关于算法algo_tips、坑点的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!