- 博客(9)
- 收藏
- 关注
原创 数据结构与算法——排序算法(Java)
排序算法分类内部排序:指将需要处理的所有数据都加载到内部存储器中进行排序。外部排序法:数据量过大,无法全部加载到内存中,需要借助外部存储进行排序。1、冒泡排序原理:冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就象水底下的气泡一样逐渐向上冒。思路图解: 代码实现:public class BubbleSort { public static v
2020-06-19 15:46:16
345
原创 java集合详解完整版(超详细)
联合整理https://blog.csdn.net/feiyanaffection/article/details/81394745https://www.cnblogs.com/linliquan/p/11323172.html一、集合大纲1、集合与数组的区别2、集合常用方法3、常用集合分类Collection 接口的接口 对象的集合(单列集合)├——-List 接口:元素按进入先后有序保存,可重复│—————-├ LinkedList 接口实现类, 链表, 插入删除, 没有
2020-06-09 21:35:43
22912
10
原创 Java数据结构与算法——递归
1、什么是递归?简单的说: 递归就是方法自己调用自己,每次调用时传入不同的变量。**递归有助于编程者解决复杂的问题,**同时可以让代码变得简洁。2、递归调用机制3、递归能解决什么问题?各种数学问题如: 8皇后问题 , 汉诺塔, 阶乘问题, 迷宫问题, 球和篮子的问题(google编程大赛)各种算法中也会使用到递归,比如快排,归并排序,二分查找,分治算法等.将用栈解决的问题–>第归代码比较简洁4、递归的规则1)执行一个方法时,就创建一个新的受保护的独立空间(栈空间)2)方法的局部
2020-05-11 11:05:16
240
原创 Java数据结构与算法——栈
1、什么是栈?1)栈的英文为(stack)2)栈是一个先入后出(FILO-First In Last Out)的有序列表。3)栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。4)根据栈的定义可知,最先放入栈中元素在栈底,最后放入的元素在栈顶,而删除元素刚好相反,最后放入的元素最先删除,最先放入的元素最后删除。2、入栈和出栈示意图3、使用数组模拟栈图解
2020-05-11 10:44:55
258
原创 java数据结构与算法——链表
链表1)链表是以节点的方式来存储,是链式存储2)每个节点包含 data 域, next 域:指向下一个节点.3)如图:发现链表的各个节点不一定是连续存储.4)链表分带头节点的链表和没有头节点的链表,根据实际的需求来确定单链表(带头结点) 逻辑结构示意图如下注意:虽然逻辑结构看起来是有顺序的,但是物理结构不一定是连续存储的!单向链表单向链表应用实例图解思路单链表创建和添加...
2020-04-29 10:39:01
182
原创 Java数据结构与算法——稀疏数组和队列
先认识一下线性结构和非线性结构的区别。线性结构和非线性结构线性结构线性结构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系线性结构有两种不同的存储结构,即顺序存储结构和链式存储结构。顺序存储的线性表称为顺序表,顺序表中的存储元素是连续的链式存储的线性表称为链表,链表中的存储元素不一定是连续的,元素节点中存放数据元素以及相邻元素的地址信息线性结构常见的有:数组、队列、链表...
2020-04-27 20:31:25
260
原创 java设计模式--抽象工厂模式
抽象工厂模式抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模式提供对象。**优点:**当一个产品族中的多个对象被设计成一起工作时,它能保证客...
2020-04-26 20:47:39
95
原创 java设计模式--工厂模式
工厂模式核心本质(实现了创建者和调用者的分离)实例化对象不用new,用工厂方法代替将选择实现类,创建对象统一管理和控制,从而将调用者和我们的实现类解耦分类简单工厂模式(对于增加新的产品,需要修改代码)工厂方法模式(支持增加任意产品)抽象工厂模式(单独作为一种设计模式)遵循的OOP原则开闭原则:一个软件的实体对扩展开放,对修改关闭依赖倒转原则:要针对接口编程,不要针对实...
2020-04-25 17:35:32
86
原创 Java设计模式--单例模式
单例模式饿汉式单例自己提供实例构造方法私有提供静态方法给其他人用public class Hungry { private Hungry(){}; private final static Hungry HUNGRY = new Hungry(); public static Hungry getInstance(){ ...
2020-04-25 16:31:08
116
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人