![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
基础算法
weixin_44356698
Java、前端、Nodejs、ThreeJs、vue、Python、ps、blender建模,都会一点点;侧重于java开发的全栈开发工程师
展开
-
java算法5——选择、插入、冒泡排序
1、选择排序 将要排序的对象分作两部份,一个是已排序的,一个是未排序的,从后端未排序部份选择一个最小值,并放入前端已排序部份的最后一个,例如:排序前:70 80 31 37 10 1 48 60 33 80 [1] 80 31 37 10 70 48 60 33 80 选出最小值1 [1 10] 31 37 80 70 48 60 33 80 选出最小值10 [1 10 31] 37 80 70 48 60 33 80 选出最小值31 [1 10 31 33] 80 7原创 2020-09-09 09:39:02 · 84 阅读 · 0 评论 -
java算法4——三色旗
题目:一根绳索上有若干个红、白、蓝三种颜色的旗,现在要求重新根据颜色分组排序,其中将蓝色的旗排放到最前边,白色的旗排放在中间、红色的旗排放在后边。要求:每次只能互换两个旗的位置。 解题思路:(1)设置三个指针,w是正常遍历的指针,b指向最前边的指针,r指向最后边的指针; (2)移动w,碰到蓝色旗便将w位置和b位置的旗互换,b和w指针分别向前移动一步; (3)移动w,碰到红色旗,便将w位置和r位置处的旗互换,r指针向后退一步,w指针位置指向的旗由于变化成未知颜色的旗,顾不可原创 2020-09-07 19:53:29 · 199 阅读 · 0 评论 -
java算法3——巴斯卡三角形(杨辉三角形)
巴斯卡三角形是罗一次列出二项式不同次幂的系数,并且高次幂的系数可以通过低一级次幂的系数算出来。三角形每行边上都是1,具体请看图:解题思想:使用list集合,并填充第一行和第二行int数组为1;以后每增加一行,int数组开头和结尾填充1,中间数据根据自己所在位置坐标n,通过上一行数据的位置n-1和n的和来计算。代码如下:import java.util.ArrayList;import java.util.List;/*帕斯卡三角形 杨辉三角,又名 贾宪三角形 */ public c原创 2020-09-07 19:28:59 · 482 阅读 · 0 评论 -
java算法2——费氏数列
这个比较简单,直接上代码:import java.util.ArrayList;import java.util.List;/*说明:Fibonacci为1200年代的欧洲数学家,在他的着作中曾经提到:若有一只兔子每个月生一只小兔子,一个月后也开始生产。起初只有一只兔子,一个月后就有两只兔子,二个月后就有三只兔子,三个月后有五只兔子(小兔子投入生产)……如果不太理解这个例子的话,举个图就知道了,注意新生的小兔子需一个月成长期才会投入生产,类似的道理也可以用于植物生长这就是Fibonacc原创 2020-09-07 19:10:06 · 936 阅读 · 4 评论 -
java算法1——河内之塔
河内之塔游戏规则:有A、B、C三个石棒,A上有若干个从小到大依次排列的盘子,盘子的数量为n,现在要求,将A棒上的盘子依次移动到C棒上,并且移动过程中要保证小盘在大盘之上。 (1)当n=1时:将盘子直接从A移动到C;图一 (2)当n=2时:将小盘子1从A移动到B; 将大盘子2从A移动到C; 将小盘子1从B移动到C;图二 (3)当n=3时:将盘子1从A移动到C; 将盘子2从A移动到B;原创 2020-09-07 18:46:40 · 389 阅读 · 0 评论