摘要:
工厂模式 工厂模式属于创建型模式.提供了一种创建对象的最佳方式. 介绍 定义一个创建对象的接口,让其子类自己决定实例化哪一工厂类,工厂模式使其创建过程延迟到子类进行. 应用实例一 您需要一辆汽车,可以直接从工厂里面提货,而不用去管这俩汽车是怎么做出来的,如果想新增一个产品,只有扩展一个工厂类就可以, 阅读全文
摘要:
单例模式介绍 所谓单例模式,就是采取一定的方法保证在整个的软件系统中,只能存在一个对象实例,并且该实例只提供一个取得其对象实例的方法(静态方法) 单例模式有八种方法 1、饿汉式(静态常量) 2、饿汉式(静态代码块) 3、懒汉式(线程不安全) 4、懒汉式(线程安全,同步方法) 5、懒汉式(线程安全,同 阅读全文
摘要:
import java.util.ArrayList; /** * 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字, * 例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 * 则依次打印出数字1,2,3,4,8,12,16 阅读全文
摘要:
class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } /** * 操作给定的二叉树,将其变换为源二叉树的镜像。 阅读全文
摘要:
class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } import javax.swing.tree.Tree 阅读全文
摘要:
class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } /** * 目标: * 输入两个单调递增的链表,输出两个链表合成后的链表, * 当然我们需要合成后的链表满足单调不减规则。 阅读全文
摘要:
问题:编写代码过程中,程序员面临着来自耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性等挑战. 设计模式的好处 1、提到代码重用性(即,相同代码,不用多次编写) 2、可读性(即,编程规范性,便于其他程序员的阅读和理解) 3、可扩展性(即,当需要增加新的功能时,非常的方便,称为可维护性) 4、可靠 阅读全文
摘要:
class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } /** * 输入一个链表,反转链表后,输出新链表的表头。 * 注意:编程时,首先判断非法条件 * 思路: * 题目考的是递归 阅读全文
摘要:
class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } } /** * 输入一个链表,输出该链表中倒数第k个结点。 * 注意:编程时,首先判断非法条件 */ public class 阅读全文
摘要:
/** * 输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。 */ public class Solution11 { public int NumberOf1(int n) { if (n == 0) { return 0; } return Integer.toBinary 阅读全文