![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
RoseKarry.W
今天你对齐颗粒度了吗
展开
-
[算法-回溯法]整数变换问题
问题描述:关于整数 i 的变换 f 和 g 定义如下:f(i)=3i;g(i)=i/2(下取整)。试设计一个算法,对于给定的 2 个整数 n 和 m,用最少的 f 和 g 变换次数将 n 变换为 m。例如,可以将整数 15 用 4 次变换将它变换为整数 4:4=gfgg(15)。要求:对任意给定的整数 n 和 m,计算将整数 n 变换为整数 m 所需要的最少变换次数。...原创 2018-05-27 15:23:49 · 4484 阅读 · 4 评论 -
蓝桥杯《算法很美》第四章 多维数组和矩阵
【1】顺时针打印二维数组#include <iostream>#include <iomanip>#define MAX 10/** 回型打印N行M列矩阵 通过不断定位“口”字的左上角和右下角 先打印一圈,再找到重新定位左上角和右下角的规律*/void Print_arr(int A[MAX][MAX], int N, int M){...原创 2019-03-12 19:43:14 · 259 阅读 · 0 评论 -
蓝桥杯《算法很美》第二章 查找与排序C/C++【四】
【1】有序数组中的和因子/** 有序数组中找和的因子,即打印所有相加为K的数对 头尾双指针法*/void SumK(int A[], int N, int K){ int left = 0; int right = N-1; int sum; while(left < right){ sum = A[left] + A...原创 2019-03-09 18:21:02 · 228 阅读 · 0 评论 -
蓝桥杯《算法很美》第二章 查找与排序C/C++【二】
解题实战【1】小白上楼梯小白正在上楼梯,楼梯有n阶台阶,小白一次可以上1阶,2阶或者3阶,实现一个方法,计算小白有多少种走完楼梯的方式。/*小白上楼梯*/int smallwhite(int n){//n表示台阶数 if(n==0) return 1; if(n==1) return 1; if(n==2) return 2; return smal...原创 2019-02-25 22:06:49 · 313 阅读 · 2 评论 -
蓝桥杯《算法很美》第二章 查找与排序C/C++【三】
【1】快速排序快速排序是C++编译器中调用.sort()函数时选用的排序。/*快排*/void Swap(int A[], int a, int b){ int temp; temp = A[a]; A[a] = A[b]; A[b] = temp;}/*单项扫描分区法*/int Partition(int A[], int p, int r){...原创 2019-03-04 00:22:29 · 397 阅读 · 0 评论 -
蓝桥杯《算法很美》第二章 查找与排序C/C++【一】
查找与排序先从讲递归开始。课程列举了很多递归典例,按照理解的难度从简到繁,部分过于简单的就不再赘述了,只写一些有意义的代码。递归的要点找变化,找重复,找出口,子问题要与原问题有同样的结构。【一】辗转相除法, 又名欧几里德算法(Euclidean algorithm),是求最大公约数的一种方法。它的具体做法是:用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第...原创 2019-02-20 17:15:30 · 306 阅读 · 0 评论 -
蓝桥杯《算法很美》第一章 位运算的奇巧淫技学习笔记C/C++之练习题
题目1 : Exam07_TwoSingleNumbers时间限制:2000ms单点时限:1000ms内存限制:256MB描述一个整型数组里除了两个数字(互不相同)之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。输入第一行:数组的长度N(1<n<100000)第二行:N个整数,空格隔开输...原创 2019-02-18 13:59:34 · 446 阅读 · 0 评论 -
蓝桥杯《算法很美》第一章 位运算的奇巧淫技学习笔记C/C++【三】
位运算中进制的应用《0~1间浮点实数的二进制表示》 求十进制整数的二进制形式采用除法; 求十进制小数的二进制形式采用乘法。/*二进制小数*/#include <iostream>#include <iomanip>#include <stdio.h>#include <stdlib.h>#include <cs...原创 2019-02-18 11:56:47 · 730 阅读 · 0 评论 -
蓝桥杯《算法很美》第一章 位运算的奇巧淫技学习笔记C/C++【二】
这篇笔记主要讲&运算的巧用。原理:0作&消除,1作&保留。《二进制中1的个数》方法一:将1移动到想要判断的那一位上,进行与&操作,&的特点是1&任何数运算均为那个数本身,0&任何数都是0。/*二进制中1的个数*/#include <iostream>#include <iomanip>#in...原创 2019-02-16 21:02:19 · 565 阅读 · 0 评论 -
蓝桥杯《算法很美》第一章 位运算的奇巧淫技学习笔记C/C++【一】
位运算符逻辑移位:移位所缺少的数字用“0”来填充 算术移位:移位所缺少的数字用符号位来填充C语言中,对于常量,如果左移的位数大于了31位,那么结果为0;而对于变量,如果移位的位数 b 大于了该类型的大小 sz ,则先用b对sz取模,即 b = b % sz,然后再进行移位运算验证:#include <iostream>using namespace std;...原创 2019-02-16 13:53:36 · 608 阅读 · 0 评论