- 博客(59)
- 资源 (2)
- 收藏
- 关注
原创 螺旋矩阵
1. 题目描述题目地址给定一个m x n大小的矩阵(m行,n列),按螺旋的顺序返回矩阵中的所有元素。例如,给出以下矩阵: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ]返回: [1,2,3,6,9,8,7,4,5]2. 解题思路通过转向,当到达边界线以及遍历过的元素时,修改下标值for 循环 N * M,遍历每一个元素;定义转向坐标:dx={0, 1, 0, -1}, dy={1, 0, -1,
2020-10-25 09:53:00 202
原创 将字符串转为整数
1. 题目描述实现函数 atoi 。函数的功能为将字符串转化为整数提示:仔细思考所有可能的输入情况。这个问题没有给出输入的限制,你需要自己考虑所有可能的情况。题目要求:“+” : 正数“-”:负数开头结尾空格算是合法0 在开头也合法超出 int 范围输出 int 极限值如果前面数字合法,后面遇到非数字时,输出前面数字部分不合法时输出 02. 解题思路先将去除字符串开头结尾空格判断符号位判断开头是否为 0将合法的数字加入到 list 集合处理 list 集合,循环遍历
2020-10-19 20:47:11 377
原创 两数之和
1. 题目描述给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]2. 题解思路使用 HashMap 存储元素,数组元素作为键,下标索引作为值遍历数组,查找目标值减去当前元素值
2020-10-11 16:20:17 186
原创 面试题 02.05. 链表求和
1. 题目描述给定两个用链表表示的整数,每个节点包含一个数位。这些数位是反向存放的,也就是个位排在链表首部。编写函数对这两个整数求和,并用链表形式返回结果。示例:输入:(7 -> 1 -> 6) + (5 -> 9 -> 2),即617 + 295输出:2 -> 1 -> 9,即912进阶:思考一下,假设这些数位是正向存放的,又该如何解决呢?示例:输入:(6 -> 1 -> 7) + (2 -> 9 -> 5),即617 +
2020-10-10 21:59:07 217
原创 剑指 Offer 58 - II. 左旋转字符串
1. 题目描述字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。示例 1:输入: s = "abcdefg", k = 2输出: "cdefgab"示例 2:输入: s = "lrloseumgh", k = 6输出: "umghlrlose" 限制:1 <= k < s.length <= 100002. 解
2020-10-02 10:48:01 182 1
原创 20200917 京东笔试(第一题)
1. 题目描述时间限制: 3000MS内存限制: 589824KB题目描述:小明想从一段英文短文中提取潜在的年份信息,待匹配的年份的范围为1000年至3999年,包含1000和3999。输入一段英文短文,按出现次序输出所提取到的所有可能的年份字符串。输入描述单组输入,输入一段英文短文,可能包含字母大小写,标点符号及空格。(不超过2000个字符)输出描述输出所提取到的所有可能的年份字符串,两两之间用一个空格隔开。样例输入And millionaires will hold 46%
2020-09-18 17:01:11 940
原创 shell 脚本
目录1、for 循环写入文件1、for 循环写入文件for i in {1..3};do seq 1 10 > ${i};done
2020-03-07 17:35:04 94
原创 数据结构-集合类
目录1、ArrayList1.1 ArrayList 简介1.1 扩容机制2、LinkedList2.1 LinkedList 介绍3、HashMap3.1 HashMap 介绍3.2 为什么我们建议在定义HashMap的时候,就指定它的初始化大小呢?3.3 HashMap什么时候扩容呢?4、HashTable4.1 HashTable 介绍4.2 Hashtable构造方法4.3 Hashtab...
2020-03-03 12:09:22 290
原创 面试题
目录1、快速失败(fail-fast)和安全失败(fail-safe)的区别?2、请简单介绍一下spring?3、请问Spring中Bean的作用域有哪些?4、请问Struts拦截器和Spring AOP有什么区别?5、请谈一谈Spring中自动装配的方式有哪些?6、请讲讲你所知道的常用集合类以及主要方法?1、快速失败(fail-fast)和安全失败(fail-safe)的区别?快速失败,在对...
2020-03-03 09:23:09 235
原创 jvm
目录1、类加载器的种类2、双亲委派机制2.1 双亲委派模式的优势1、类加载器的种类启动类加载器(Bootstrap ClassLoader)负责加载JRE的核心类库,如JRE目标下的rt.jar,charsets.jar等扩展类加载器(Extension ClassLoader)负责加载JRE扩展目录ext中jar类包系统类加载器(Application ClassLoader)负...
2020-03-03 00:50:40 198
原创 Istio
目录1、Istio 概念2、Istio 基本介绍2.1 Istio核心组件和功能2.1.1 数据面2.1.2 控制面板2.1.3 Pilot2.1.4 Mixer2.1.5 Citadel2.1.6 Sidecar2.2 服务流量控制3、故障处理3.1 负载均衡3.1.1 简单负载均衡3.1.2 一致性哈希负载均衡3.2 连接池3.3 健康检查3.4 限流3.5 超时3.6 重试3.7 熔断1、...
2020-02-24 16:41:31 870
原创 Kubernetes
目录1、Kubernetes 概念2、Kubernetes 集群2.1 Master 节点2.1.1 API Server2.1.2 Scheduler2.1.3 Controller manager2.1.4 etcd2.2 Node 节点2.2.1 Pod2.2.2 Kubelet2.2.3 Kubernetes Service Proxy2.3参考文章1、Kubernetes 概念Ku...
2020-02-23 22:56:15 194
原创 Docker
目录1、认识容器1.1 什么是容器?2、 Docker 的一些概念2.1 什么是 Docker?2.3 Docker 容器的特点2.4 为什么要用 Docker ?3、Docker 基本概念3.1 镜像( Image )3.2 容器( Container )参考文章1、认识容器1.1 什么是容器?容器就是将软件打包成标准化单元,以用于开发、交付和部署。容器镜像是轻量的、可执行的独立软...
2020-02-23 21:02:10 85
原创 适配器模式
目录1、 适配器模式1.1 类适配器1.2 对象适配器1、 适配器模式将一个类的接口转换成客户希望的另一个接口。1.1 类适配器适配器类继承被适配器类,实现业务接口,在适配器中重写相关方法:写需要适配的逻辑以及调用被适配类的相关方法。1.2 对象适配器...
2020-02-23 11:06:42 79
原创 原型模式
目录1、原型模式2、模式分析3、三个角色3.1 Prototype3.2 ConcreteProtorype3.3 Client1、原型模式通过复制对象实例得到新的实例。2、模式分析在原型模式结构中定义了一个抽象原型类,所有的Java类都继承自java.lang.Object,而Object类提供一个clone()方法,可以将一个Java对象复制一份。因此在Java中可以直接使用Objec...
2020-02-22 22:43:06 84
原创 建造者模式
目录1、建造者模式2、建造者模式主要包含四个角色2.1 Product(产品角色)2.2 Builder(抽象建造者)2.3 ConcreteBuilder(具体建造者)2.4 Director(指挥者)2.5 测试使用步骤1、建造者模式它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。目的是通过组装零配件而产生一个新产品。客户端不必知道产品内部组成...
2020-02-22 21:57:59 109
原创 工厂模式
目录1、工厂模式介绍1.1 工厂模式的定义1.2 工厂模式的分类1.3 优点2、简单工厂2.1 简单工厂实现2.1.1 创建 Shape 接口2.1.2 创建实现该接口的具体图形类2.1.3 创建工厂类2.1.4 测试方法2.2 使用反射机制改善3、工厂方法模式3.1 适用场景3.2 工厂模式实例3.2.1 增加工厂接口3.2.2 增加相关工厂类3.2.3 测试4、抽象工厂模式4.1 抽象工厂的工...
2020-02-22 21:33:35 125
原创 单例模式
目录1、看懂UML类图和时序图2、单例模式2.1 定义2.2 单例模式几个好处2.3 为什么不使用全局变量确保一个类只有一个实例呢?2.3 单例的模式的实现2.1 饿汉式(线程安全)2.2 懒汉式2.2.1 非线程安全式2.2.2 线程安全方式2.2.2.1 加锁2.2.2.2 双重检查加锁2.2.3 登记式/静态内部类2.2.4 枚举方式2.2.5 单例不一定实现实例的唯一性(除了枚举方式)参...
2020-02-22 20:44:27 167
原创 Spring Cloud
目录1、Spring cloud1.1 服务发现框架——Eureka1.2 负载均衡之 Ribbon1.3 服务调用映射 OpenFeign1.4 服务降级熔断器 Hystrix1.5 微服务网关——Zuul参考文章1、Spring cloudSpring Cloud 就是微服务系统架构的一站式解决方案,在平时我们构建微服务的过程中需要做如:服务发现注册 、配置中心 、消息总线 、负载均衡 ...
2020-02-22 15:44:26 87
原创 SpringBoot启动流程解析
目录1、概括1.1 启动原理1.1.1 SpringBoot启动类1.2 自动配置原理参考文章1、概括启动流程主要分为三个部分:进行 SpringApplication 的初始化模块,配置一些基本的环境变量、资源、构造器、监听器。实现了应用具体的启动方案,包括启动流程的监听模块、加载配置环境模块、及核心的创建上下文环境模块。自动化配置模块,该模块作为springboot自动配置核心。...
2020-02-22 14:48:59 204
原创 SSM
目录1、系统架构1.1 三层架构1.2 MVC1.3 MVC 与三层架构的关系1.4 SSM 与三层架构的关系1、系统架构1.1 三层架构View 层:用于接收用户提交请求Service 层:系统的业务逻辑Dao 层:直接操作数据库1.2 MVCMVC,即 Model 模型、View 视图,及 Controller 控制器。View:视图,为用户提供使...
2020-02-22 10:43:08 929 1
原创 SpringBoot遇到错误
目录1、Exception evaluating SpringEL expression1.1 问题描述1.2 解决方法2、使用 < label for="title"> 标签 title 报红2.1 错误原因2.2 解决方法1、Exception evaluating SpringEL expression1.1 问题描述1.2 解决方法将表达式 th:text="${bo...
2020-02-20 22:37:28 765
原创 剑指 Offer —— 面试题03. 数组中重复的数字
目录1、题目描述2、代码实现执行结果3、思考1、题目描述找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3 限制:2 <= n <= 1...
2020-02-20 17:43:33 146
原创 Spring 原理及项目实践 Demo
目录1、Spring 概述2、Spring 特点2.1 非侵入式2.2 容器2.3 IoC2.4 AOP3、Spring 项目实践3.1 创建 Maven 项目,导入 Spring 及相关依赖3.2 创建实体类3.3 创建 Spring 配置文件3.4 添加 log4j 配置文件3.5 测试4、两种接口容器4.1 ApplicationContext 接口容器4.1.1 配置文件在类路径下4.1....
2020-02-20 16:43:49 266
原创 创建内部类时:Varible 'num' is accessed from within inner class, need to be final or effectively final
目录1、在创建内部类,并且匿名内部类在使用外部成员的时候会报错,需要将外部成员使用final修饰:1、在创建内部类,并且匿名内部类在使用外部成员的时候会报错,需要将外部成员使用final修饰:在进行 Java 文件的编译时,匿名内部类也会被当作普通的类处理,编译器生成它构造方法的时候,除了将外部类的引用传递了过来,还将基本数据类型的变量复制了一份过来,并把引用数据类型的变量引用也传递了过来。因...
2020-02-20 08:36:55 4735
原创 maven
目录1、安装 jar 到仓库1、安装 jar 到仓库 mvn install:install-file -Dfile=d:\setup\dubbo-2.8.4.jar -DgroupId=com.alibaba -DartifactId=dubbo -Dversion=2.8.4 -Dpackaging=jar
2020-02-19 17:40:05 67
原创 微服务入门
目录一、微服务架构1、什么是微服务2、微服务和分布式的区别3、微服务实践方式Docker 和 Kubernetes 关系ServiceMesh参考:微服务入门参考文章2:服务迁移之路 | Spring Cloud向Service Mesh转变参考文章3:Docker&k8S&ServiceMesh与Dubbo&SpringCloud微服务框架思考一、微服务架构1、...
2020-02-19 17:39:44 98
原创 Java 面试知识点
目录1、super.getClass()方法调用2、下面这条语句一共创建了多少个对象:String s="a"+"b"+"c"+"d";3、stop()和suspend()方法为何不推荐使用?4、sleep() 和 wait() 有什么区别?5、当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?6、ArrayList和Vector的区别7、HashMa...
2020-02-19 17:14:33 89
原创 Linux 命令
目录1、创建用户2、切换用户3、文件夹操作3.1 创建文件夹3.2 删除文件夹1、创建用户useradd user 创建用户 userpasswd user 给已创建的用户 user 设置密码usermod --help 修改用户这个命令的相关参数userdel user 删除用户 user rm -rf user 删除用户 user 所在目录2、切换用...
2020-02-19 08:34:52 91
原创 Centos7.6 Docker 在线安装及相关命令
目录1、Centos7.6 Docker 在线安装命令2、Docker 相关命令2.1 Docker 镜像相关命令2.1.1 查看 Docker 版本2.1.2 查看镜像2.1.3 获取镜像详细信息2.1.3.1 只获取其中一项内容2.1.4 使用history命令查看镜像历史2.1.5 加载镜像2.1.5.1 从已有的 tar 镜像文件加载镜像2.1.6 进入到镜像内部2.2 Docker 容...
2020-02-19 08:30:30 366
原创 IDEA中配置一键启动多个程序
目录1、按照顺序启动2、不按照启动顺序一键启动多个程序1、按照顺序启动例如:Test1 ——> Test2 ——> Test3 ——> Test4 ——> Test5在 run/debug config 配置页面进行配置:在 Test5 中添加 Test4:代表在启动 Test5 之前启动Test4,依次类推,在 Test4 中添加 Test3,在 Test3 中...
2020-02-18 13:51:56 4008 4
原创 Redis
目录1、redis 简介2、为什么要用 redis/为什么要用缓存参考文章1、redis 简介redis 的数据是存在内存中的,所以读写速度非常快。redis 支持事务 、持久化、LUA脚本、LRU驱动事件、多种集群方案。2、为什么要用 redis/为什么要用缓存...
2020-02-17 22:17:37 79
原创 MySQL
目录1、MySQL索引1.1 为表字段添加索引2、事务2.1 什么是事务?2.2 事物的四大特性(ACID)2.2.1 原子性(Atomicity)2.2.2 一致性(Consistency)2.2.3 隔离性(Isolation)2.2.4 持久性(Durability)2.3 并发事务带来的问题2.3.1 脏读2.3.2 不可重复读2.3.3 幻读2.3.4 丢失修改2.4 事务隔离级别有哪些...
2020-02-17 21:25:34 99
原创 RPC
目录1、RPC参考文章1、RPCRPC(Remote Procedure Call)—远程过程调用,通过网络从远程计算机程序上请求服务。RPC主要依赖的技术包括序列化、反序列化和数据传输协议,这是一种定义与实现相分离的设计。目前Java使用比较多的RPC方案主要有 RMI(JDK自带)、Hessian、Dubbo以及Thrift 等。注意: RPC主要指内部服务之间的调用,RESTfu...
2020-02-17 16:59:35 104
原创 网络编程
目录1、五层协议1.1 应用层(HTTP,DNS,SMTP 协议)1.2 运输层(TCP/UDP 协议)1.3 网络层(IP协议)1.4 数据链路层1.5 物理层2、TCP 三次握手,四次挥手2.1 三次握手2.2 四次挥手8、HTTP8.1 HTTP 长连接,短连接8.2 HTTP是不保存状态的协议,如何保存用户状态?9、 Cookie的作用是什么?和Session有什么区别?1、五层协议...
2020-02-17 16:35:02 124
原创 Java并发知识
目录1、线程和进程1.1 何为进程?1.2 何为线程?2、进程和线程区别2.1 程序计数器为什么是私有的?2.2 虚拟机栈和本地方法栈为什么是私有的?7. 什么是上下文切换?8. 什么是线程死锁?如何避免死锁?1、线程和进程1.1 何为进程?进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。1.2 何为线程?线程...
2020-02-17 16:29:54 113
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人