算法笔记
乔冷
正在变秃
展开
-
算法笔记02|洗牌算法(附C++代码)
系列文章目录● 算法笔记01|欧几里得GCD算法(附C++代码)文章目录系列文章目录一、洗牌问题的定义二、洗牌算法1. 算法思想2. 实现举例3. 算法代码(c++)一、洗牌问题的定义通俗地说,洗牌(Shuffle)问题就是将排好序的扑克牌打乱,且打乱后的次序不可预测。形式化来说,洗牌问题就是将n个排好序的数字或符号打乱,使排序次序随机。二、洗牌算法1. 算法思想算法的主要思想为随机选取一个元素与最后一个未交换的元素交换,最终令全部元素被交换。具体思想:① 首先从 1~n原创 2020-11-01 11:38:35 · 2331 阅读 · 1 评论 -
算法笔记01|欧几里得GCD算法(附C++代码)
目录前言一、欧几里得GCD定理二、欧几里得GCD算法1. 算法思想2. 算法伪代码3. 算法复杂度4. 算法代码(c++)三、写在后面前言 最大公约数(GCD,Greatest Common Divisor)问题,即求两个或多个整数共有约数中最大的一个。求取两个数GCD的直观方法——整数的因子分解法 即将每个整数分解为素因子的积,找出公共的素因子,他们的积即是GCD。 例如:210=2x3x5x7; 252=2x2x3x3x7; 公共素因子为2x3x7=42,所以210和252原创 2020-11-01 10:58:44 · 3474 阅读 · 0 评论