数组左平移
来源:互联网 发布:caxa编程快捷键 编辑:程序博客网 时间:2024/05/19 04:05
//时间O(n),空间O(1)int gcd(int x, int y) { while (x != 0) { x ^= y; y ^= x; x ^= y; x %= y; } return y;}void transleft(int *A, int k,int n) { k = (k % n + n) % n; int m = gcd(n, k); for (int i = 0; i < m; ++i) { int temp = A[i]; for (int j = 0;j<n/m-1;++j) A[(i+k*j)%n] = A[(i+k*(j+1))%n]; A[(i + k*(n / m - 1)) % n]=temp; }}
阅读全文
0 0
- 数组左平移
- 数组元素平移交换
- 数组元素的平移
- 循环左移数组
- 算法---左旋转数组
- 循环左移数组
- 循环左移数组
- 数组循环左移
- 左旋转数组
- 循环左移数组
- 左旋转数组
- 数组循环左移
- 循环数组左移
- 数组循环左移
- 数组循环左移
- 数组循环左移
- 数组循环左移
- 数组循环左移
- NOI-linux下vim常用配置
- Q
- 打印1000以内阶乘
- 机器学习-KNN算法代码详解
- MagicIndicator源码学习
- 数组左平移
- Win10 64位 MySQL5.7.20安装教程
- jvm理解
- 关于PCA降维原理的几点思考
- 系统安全系列篇 序
- C++中整型变量的存储大小和范围
- 计算星期(基姆拉尔森公式)
- c++ bitset学习小记
- Excel之实现鼠标点击完成自动累加功能