蓝桥杯的数论总结

声明

我只是把数论相关的东西放在了一起,会有自己的理解,所以会有错误哈,欢迎在评论区中指出,另外有啥看不懂的也可以在评论区留言,我看到后就回你

质数

暴力

  • 质数一般都是奇数,除了2
  • 小于2的不用考虑了
java 复制代码
boolean prime(int n){
	if(n<2)
		return false;
	
	if(n!=2 && n % 2==0 )
		return false;
	for(int i=2;i<n;i++){
		if(n%i==0)
			return false;
	}
	return true;
}

优化1 对for循环的上界进行调整

这个优化你见过,就是将for循环的上界改为sqrt(n),但是这样写的话是比较费时间的,我听一位大佬说的,sqrt这个函数比较慢,倒不如这么写

java 复制代码
int upperBound = sqrt(n);
for(int i=2;i<=upperBount;i++)
	...

这样不用重复计算了

当时那位大佬推荐下面的写法

java 复制代码
for(int i=2;i<=n/i;i++)
	...

这个记住一下,这个知识点我还没有学会

相关推荐
Escalating_xu2 小时前
【Linux】进程信号:从产生、阻塞与递达到 sigaction、可重入与内核返回路径
linux·运维·面试·职场和发展
吃着火锅x唱着歌4 小时前
LeetCode 3597.分割字符串
算法·leetcode·职场和发展
.道阻且长.1 天前
8.LeetCode算法习题讲解--滑动窗口--长度最小的子数组
算法·leetcode·职场和发展
测试19981 天前
Python接口测试之requests库安装和导入
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
浅念-1 天前
MySQL 索引底层完整详解|磁盘Page|B+树推导|聚簇非聚簇索引|索引SQL操作
大数据·数据库·b树·sql·mysql·面试·职场和发展
我命由我123451 天前
商圈六大配套
学习·职场和发展·求职招聘·职场发展·产品经理·学习方法·零售
Dr.kangder1 天前
嵌入式面试总结(二十二)——指针
java·面试·职场和发展·架构·嵌入式
Dr.kangder1 天前
嵌入式面试总结(二十)——ISA原理
单片机·面试·职场和发展·系统架构·嵌入式
Nil2081 天前
leetcode 48旋转图像
算法·leetcode·职场和发展
Dr.kangder1 天前
嵌入式面试总结(二十一)——C语言关键字
c语言·开发语言·面试·职场和发展·架构·虚拟化