冒泡算法是一种基础的排序算法,其核心思想是反复交换相邻元素,如同水中的气泡逐渐上浮。它通过多轮遍历,在每一轮中依次比较相邻的两个元素,如果它们的顺序错误(例如前一个比后一个大),就交换它们的位置,这样每一轮遍历都会将当前未排序部分中的最大(或最小)元素“浮”到正确的一端(末端)。这个过程不断重复,直到某一轮遍历中没有发生任何交换,表明序列已经完全有序,其时间复杂度为 O(n²),效率较低。1. C
这模板用于求解线性丢番图方程 ax + by = cax+by=c,它首先通过扩展欧几里得算法检查整数解是否存在(当且仅当 cc 能被 aa 和 bb 的最大公约数整除),然后计算出方程中 xx 的一个特解,并通过模运算将其调整为其最小非负整数解,最后返回该解值;若无解则返回 -1。1. C/C++版代码:longlongextgcd(longlong 
GCD,即最大公约数,指两个或多个整数共有约数中最大的一个,比如正整数12和18的最大公约数是6。GCD算法的核心是欧几里得算法(又称“辗转相除法”),它基于一个简洁的数学原理:两个正整数 a 和 b 的最大公约数,等于 a 除以 b 的余数 r 与 b 的最大公约数,即 gcd(a, b) = gcd(b, a mod b)。这个过程通过反复用较小的数替换较大的数,并用余数替换较小的数,直到余数