倪春恩的博客
【转载】设计模式:单例设计模式(Singleton Pattern)完全解析 【转载】设计模式:单例设计模式(Singleton Pattern)完全解析
什么会有单例设计模式? 我们都知道单例模式是在开发中用的最多的一种设计模式,那么究竟为什么会有单例设计模式呢?对于这个问题相信有很多会写单例的人都会有个这个疑问。在这里先说一下单例的用途,然后举一个例子大家就会明白为什么会有单例了。单例模式
2023-03-27
offer2-17 offer2-17
给定两个字符串 s 和 t 。返回 s 中包含 t 的所有字符的最短子字符串。如果 s 中不存在符合条件的子字符串,则返回空字符串 "" 。 如果 s 中存在多个符合条件的子字符串,返回任意一个。 注意: 对于 t 中重复字符,我们寻找的子
2023-03-27
【转载】设计模式:工厂模式-从卖肉夹馍说起 【转载】设计模式:工厂模式-从卖肉夹馍说起
今天继续设计模式之旅,给大家带来工厂模式,简单列一下这个模式的家族: 1、静态工厂模式 2、简单工厂模式 3、工厂方法模式 4、抽象工厂模式 是不是觉得,我勒个去,这工厂还能列出这么多分类,哈哈,下面开始各个击破。 1、静态工厂模式 这个最
2023-03-24
offer2-16 offer2-16
给定一个字符串 s ,请你找出其中不含有重复字符的 最长连续子字符串 的长度。 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子字符串是 "abc",所以其长度为 3。 示例 2: 输入: s
2023-03-24
【转载】设计模式:观察者模式-以微信公众服务为例 【转载】设计模式:观察者模式-以微信公众服务为例
观察者模式定义定义了对象之间的一对多的依赖,这样一来,当一个对象改变时,它的所有的依赖者都会收到通知并自动更新。 好了,对于定义的理解总是需要实例来解析的,如今的微信服务号相当火啊,下面就以微信服务号为背景,给大家介绍观察者模式。 看一张图
2023-03-23
offer2-15 offer2-15
给定两个字符串 s 和 p,找到 s 中所有 p 的 变位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 变位词 指字母相同,但排列不同的字符串。 示例 1: 输入: s = "cbaebabacd", p = "abc" 输出
2023-03-23
offer2-13 offer2-13
给定一个二维矩阵 matrix,以下类型的多个请求: 计算其子矩形范围内元素的总和,该子矩阵的左上角为 (row1, col1) ,右下角为 (row2, col2) 。 实现 NumMatrix 类: NumMatrix(int[]
2023-03-20
offer2-12 offer2-12
给你一个整数数组 nums ,请计算数组的 中心下标 。 数组 中心下标 是数组的一个下标,其左侧所有元素相加的和等于右侧所有元素相加的和。 如果中心下标位于数组最左端,那么左侧数之和视为 0 ,因为在下标的左侧不存在元素。这一点对于中心下
2023-03-19
offer2-11 offer2-11
给定一个二进制数组 nums , 找到含有相同数量的 0 和 1 的最长连续子数组,并返回该子数组的长度。 示例 1: 输入: nums = [0,1] 输出: 2 说明: [0, 1] 是具有相同数量 0 和 1 的最长连续子数组。 示
2023-03-17
offer2-10 offer2-10
给定一个整数数组和一个整数 k ,请找到该数组中和为 k 的连续子数组的个数。 示例 1: 输入:nums = [1,1,1], k = 2 输出: 2 解释: 此题 [1,1] 与 [1,1] 为两种不同的情况 示例 2: 输入:num
2023-03-16
33 / 50