![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
[QQ红包]:恭喜发财
这个作者很懒,什么都没留下…
展开
-
辗转相除法求最大公约数
直接上模板import java.util.Scanner;public class day11 { public static void main(String args[]) { int a ; int b; Scanner sc = new Scanner(System.in); a = sc.nextInt(); b = sc.nextInt(); System.out.println("这两个数的最大公约数是:"+gcd(a , b)); } private原创 2021-04-17 17:37:41 · 58 阅读 · 0 评论 -
Java蓝桥杯------猜字母
题目标题:猜字母// 把abcd…s共19个字母组成的序列重复拼接106次,得到长度为2014的串。// 接下来删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母。// 得到的新串再进行删除奇数位置字母的动作。如此下去,最后只剩下一个字母,请写出该字母。// 答案是一个小写字母,请通过浏览器提交答案。不要填写任何多余的内容。题解import java.util.*;public class day10 { public static void main(String原创 2021-04-14 18:06:47 · 230 阅读 · 0 评论 -
Dfs简单举例(全排列模板)(Java实现)
什么是dfs深度优先搜索算法(Depth First Search,简称DFS):一种用于遍历或搜索树或图的算法。沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所在边都己被探寻过或者在搜寻时结点不满足条件,搜索将回溯到发现节点v的那条边的起始节点。整个进程反复进行直到所有节点都被访问为止。属于盲目搜索,最糟糕的情况算法时间复杂度为O(!n)。算法思想回溯法(探索与回溯法)是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到原创 2021-04-12 22:17:11 · 317 阅读 · 0 评论 -
Java蓝桥杯真题详解——黄金连分数
题目解读黄金分割数0.61803… 是个无理数,这个常数十分重要,在许多工程问题中会出现。有时需要把这个数字求得很精确。对于某些精密工程,常数的精度很重要。也许你听说过哈勃太空望远镜,它首次升空后就发现了一处人工加工错误,对那样一 个庞然大物,其实只是镜面加工时有比头发丝还细许多倍的一处错误而已,却使它成了“近视眼”!!言归正传,我们如何求得黄金分割数的尽可能精确的值呢?有许多方法。比较简单的一种是用连分数: 1黄金数 = ----------------原创 2020-12-23 14:08:45 · 196 阅读 · 1 评论 -
蓝桥杯JavaB组真题详解——振兴中华
题目解读小明参加了学校的趣味运动会,其中的一个项目是:跳格子。地上画着一些格子,每个格子里写一个字,如下所示: 从我做起振 我做起振兴 做起振兴中 起振兴中华比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华”字结束。要求跳过的路线刚好构成“从我做起振兴中华”这句话。请你帮助小明算一算他一共有多少种原创 2020-12-21 10:21:32 · 305 阅读 · 0 评论 -
蓝桥杯JavaB组真题详解—马虎的算式
题目说明小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。有一次,老师出的题目是:36495=?然后小明抄成了:39645=?但是答案却很戏剧性,他的答案竟然是对的!因为36495=39645=17820类似这样的巧合情况可能还有很多,…假设a b c d e代表1-9不同的5个数字(注意是各不相同的数字,并且不包含0)形如:ab * cde=adb * ce这样的式子一共有多少种呢?解题思路我们需要五个嵌套循环来遍历这么多种情况并且abcde这五个数字还是不同的五个数字(中原创 2020-12-20 18:19:48 · 225 阅读 · 0 评论 -
蓝桥杯JavaB组真题详解(世纪末的星期)
题目:世纪末的星期曾有邪教称1999年12月31日是世界末日。当然谣言已经不攻自破。还有人称今后的某个世纪末的12月31号,如果是星期一则会。。。有趣的是,任何一个世纪mo的年份的12月31号都不会是星期一!!于是,"谣言制造商"又修改为星期日。。。。。1999年的12月31日是星期五,请问:未来哪一个离我们最近的一个世纪末年(既XX99)年的12月31号正好是星期天???我们的解题思路我们可以遍历每一个世纪末年,然后找到12月31号是星期天的那一天创建一个日历对象以后将日历对象的年分设置为原创 2020-12-19 16:29:54 · 231 阅读 · 2 评论 -
数组相关算法——二分查找(Java版)
条件:给定有序的数组(建议按照从小到大排序)方法:将数据与这一有序的数据的中间值作比较我们将定义两个指向这个数组的头和尾的变量(分别叫做minIndex和maxIndex)1、如果中间值比这个数据要大说明:这个数在这个数组的开头到中间位置,这个时候我们需要对maxIndex做更新将中间位置减一的下标赋给maxIndex。同时中间值也要相应的做出更新,方便下一次比较。2、如果中键值比这个小说明:这个数在数据的中间到结尾的位置。我们要对minIndex做更新:将中间位置加一的下标赋值给minIndex原创 2020-09-08 23:33:26 · 147 阅读 · 0 评论 -
数组相关算法——冒泡排序(Java版)
1、冒泡排序的过程(原理): 用到了分治的思想:将数组分为有序和无序两个部分。具体操作是比较数组无序部分(最开始无序部分就是整个数组)相邻的 两个数据,如果左边的数据比右边的数据要大则交换两个数据直到遍历完一边数组。 每一轮交换的结果呢就是数组的有序部分增加了一个数据。假设有一个这样的数组int nums[]= {1,3,9,5,6,7,15,4,8};第一次遍历,比较交换最后我们将15放到了数组的最后面,数组的有序部分增加了一个数字15.第二次遍历,最后的15我们是没有必要在进行比较原创 2020-09-08 23:09:04 · 125 阅读 · 0 评论