摘要: 二叉树的遍历分为两大类: 1、深度优先遍历(前序遍历、中序遍历、后序遍历) 2、广度优先遍历 3 2 8 9 10 null 4 package xiaohui; import java.util.Arrays; import java.util.LinkedList; import java.ut 阅读全文
posted @ 2021-10-26 22:03 黄忠 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。 输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1] 阅读全文
posted @ 2021-03-18 10:35 黄忠 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 贪心算法:指在对问题求解时,在每一步都选择最好的选择,从而希望得到最好的结果。解决集合覆盖问题比如有5个广播台,每个广播台覆盖的区域不一样,怎么选择最少的广播台,让所有区域都覆盖上如 k1广播台覆盖的区域有:北京、上海、天津 k2广播台覆盖的区域有:北京、山东、深圳 k3广播台覆盖的区域有:成都、上 阅读全文
posted @ 2021-03-17 20:52 黄忠 阅读(426) 评论(0) 推荐(0) 编辑
摘要: * 有一个字符串 str = "be bed been bean better beach" 和一个子串 str0 = "bean"* 判断 str 是否含有 str0,有则返回第一次出现的位置,没有返回-1* 思路* 循环主串每个字符 i 循环主串每个字符j* 如果当前字符串匹配成功即str[i] 阅读全文
posted @ 2021-03-17 14:19 黄忠 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 用栈实现 3+2*6-2 思路图解 7*2*2-5+1-5+3-4定义两个栈,一个栈存数字,一个栈存运算符循环字符串中的每一位表达式扫描1. 如果是数字,直接入数栈2.如果是运算符,判断优先级 若运算符>栈中的运算符,直接入栈 若运算符<=栈中的运算符,符号栈pop一个符号栈,从数字栈pop两个数进 阅读全文
posted @ 2021-03-16 16:02 黄忠 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。将一个类的接口转换成客户希望的另外一个接口。使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 适配器模式在SpringMVC框架中的应用 SpringMVC中的 HandlerAdapter ,使用了适配器模式使 阅读全文
posted @ 2021-03-06 20:10 黄忠 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 原型模式:用原型实例指定创建对象的种类,并通过拷贝这些原型,创建新的对象。 拷贝分为浅拷贝和深拷贝 浅拷贝: 对于基本数据类型,直接进行值传递,即将该属性值复制一份给新的对象 对于引用数据类型,会进行引用传递,会该将成员变量的引用值(内存地址)复制一份给新的对象,实际上两个成员变量都指同一个实例,修 阅读全文
posted @ 2021-03-06 15:54 黄忠 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 建造者模式与工厂模式的最大区别是,建造者模式更关注产品的组合方式和装配顺序,而工厂模式更关注产品的生产。 以生产电脑为类,电脑包括CPU,Memory,Disk等生产过程 具体实现如下: 1、定义需要生产的产品Computer /** * 定义需要生产的产品Computer */ public cl 阅读全文
posted @ 2021-03-06 09:39 黄忠 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 单例模式使用场景:需要频繁和创建和销毁的对象创建对象耗时过多或消耗资源过多,即重量级对象,但又经常用到的对象工具类对象,频繁访问数据库或文件的对象(如数据源、session工厂等) Runtime就是精典的饿汉单例模式应用 public class Runtime { private static 阅读全文
posted @ 2021-03-05 16:49 黄忠 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。 比如超级工厂下有两个公司,一个公司为华为,一个公司为苹果。 这两个公司都生产手机和笔记本。 第一步:创建接口 /** * 电脑接口 */ public interface Computer { //上网 阅读全文
posted @ 2021-03-05 16:41 黄忠 阅读(94) 评论(0) 推荐(0) 编辑