- 博客(9)
- 收藏
- 关注
原创 集合的全排列算法(递归实现)
全排列 eg: 集合[ 1, 2 ] 的全排列为 12 , 21 集合[ 1, 2 , 3 ] 的全排列为 123 , 132 , 213 , 231 , 321 , 312 集合大小为 n 的全排列组合个数为 :1 * 2 * … * n 递归实现全排列 /** * 该方法用来进行字符数组的全排列 * * @param chs 要进行全排列的数组 ...
2020-03-17 22:17:34
944
原创 工厂模式
工厂模式 该模式通过向工厂传递类型来指定要创建的对象。 XiaoMiPhone ,小米手机 public interface XiaoMiPhone { void buy(); } XiaoMi7 class XiaoMi7 implements XiaoMiPhone{ public void buy() { System.out.println("购买了Xia...
2020-03-15 20:26:07
180
原创 单例模式
单例模式 单例模式,它的定义就是确保某一个类只有一个实例,并且提供一个全局访问点。 单例模式的主要优点就是节约系统资源、提高了系统效率,同时也能够严格控制客户对它的访问。 饿汉式 在加载类时就创建好对象。 该单列模式可以通过 反射、 克隆、 序列化 直接创建出新的对象。 public class Single { private static Single s = new Single(...
2020-03-13 22:15:57
192
1
原创 递归算法实现汉诺塔
汉诺塔介绍 汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。 递归算法实现 public class Hanoi { public static voi...
2020-03-12 16:45:34
251
原创 萝卜展示快速排序原理
快速排序 1、创建数组 array 2、第一轮排序: 第一步: 将数组 0 号下标的值作为 key = array[0] , 第一个坑位对应数组 0 号下标 ,用 low 表示, 最后一个坑位对应数组 length()- 1 号下标, 用high 表示。 第二步: 将 array[high] 与 key 比较,如果比key大则 high–,继续与key比较, 直到 array[high] &l...
2020-03-12 14:11:54
242
原创 几个简单的排序算法——JAVA代码
菜鸟第一次发帖,求各位同学指点 直接进入主题,看代码: 冒泡排序 for (int i = 0; i < array.length-1; i++) { for (int j = 0; j < array.length-i-1; j++) { if(array[j] > array[j+1]){ array[j]=array[j]^a...
2020-03-05 22:09:26
161
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人