算法知识-数学

一.最大公约数

1.求解方式

辗转相除法

小的变成大的

大的%小的变成小的

优点:效率提高,log,级别的

cpp 复制代码
int Mygcd(int xiao, int da) {
	while (xiao != 0) {
		int tmp = da % xiao;
		da = xiao;
		xiao = tmp;
	}
	return (da);
}

二.最小公倍数

lcm(a,b)=a*b/gcd(a,b);

cpp 复制代码
int MyLcm(int a, int b) {
	return (a / Mygcd(a, b)) * b;
}

三.快速幂

cpp 复制代码
int qmi(int a, int b) {
	int res = 1;
	while (b) {
		if (b & 1)res = res * a;
		a = a * a;
		b /= 2;
	}
	return res;
}
相关推荐
khalil10202 小时前
代码随想录算法训练营Day-41动态规划08 | 121. 买卖股票的最佳时机、122.买卖股票的最佳时机II、123.买卖股票的最佳时机III
数据结构·c++·算法·leetcode·动态规划
量子炒饭大师2 小时前
【优化算法:双指针算法刷题宝典】—— 三数之和
算法·优化算法·双指针·三数之和
1104.北光c°2 小时前
Leetcode215 三种写法完成数组中的第K个最大元素 【hot100算法个人笔记】【java写法】
java·笔记·程序人生·算法·leetcode·排序算法·快速选择
AIpanda8882 小时前
当数字员工与熊猫智汇协作,如何实现销售潜力的全面提升?
算法
无限进步_2 小时前
【C++】AVL树完全解析:从平衡因子到四种旋转
c语言·开发语言·数据结构·c++·后端·算法·github
zubylon2 小时前
前端 RAG:把文档检索接到聊天页
前端·人工智能·算法
Dfreedom.3 小时前
【实战篇】分类任务全流程演示——决策树
人工智能·算法·决策树·机器学习·分类
阿梦Anmory3 小时前
【RAG相关】深入理解混合检索:BM25关键词检索与RRF融合算法详解
算法
浅念-3 小时前
LeetCode最短路必看:BFS算法原理+经典题解
数据结构·c++·算法·leetcode·职场和发展·bfs·宽度优先