能力提升
文章平均质量分 65
CryptWinter
Talk is cheap,show me the code.
展开
-
MySQL数据库面试题
数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)索引有哪几种类型?索引的数据结构(b树,hash)索引的基本原理索引算法有哪些转载 2020-08-04 22:11:08 · 113 阅读 · 0 评论 -
[周赛第200场][Leetcode][第5477题][第5478题][JAVA][双指针][贪心]
【问题描述】[中等]5477. 排布二进制网格的最少交换次数【解答思路】贪心限制条件 第一行要求末尾的0要尽量多计算每行最后有几个0遍历交互 符合条件 第i行的末尾0的数量为n-i-1 统计交换次数第i行的末尾0的数量小于n-i-1,不符合条件时间复杂度:O(N^2) 空间复杂度:O(N)class Solution { public int minSwaps(int[][] grid) { int n = grid.length;原创 2020-08-03 00:32:16 · 122 阅读 · 0 评论 -
[递归]一文看懂递归
1. 递归的定义编程语言中,函数 Func(Type a,……) 直接或间接调用函数本身,则该函数称为「递归函数」。在实现递归函数之前,有两件重要的事情需要弄清楚:递推关系:一个问题的结果与其子问题的结果之间的关系。基本情况:不需要进一步的递归调用就可以直接计算答案的情况。可理解为递归跳出条件。一旦我们计算出以上两个元素,再想要实现一个递归函数,就只需要根据递推关系调用函数本身,直到其抵达基本情况。递归函数的编写看起来比较难,其实是有套路可寻的,本文在力扣刷题阶段总结了写递归的一些范式技巧并转载 2020-07-29 00:39:58 · 724 阅读 · 0 评论 -
[Leetcode][第111题][JAVA][BFS][二叉树的最小深度][BFS][递归]
【问题描述】[简单]【解答思路】1. 递归自下而上基本情况/结束条件 :叶子节点的定义是左孩子和右孩子都为 null 时叫做叶子节点当 root 节点左右孩子都为空时,返回 1当 root 节点左右孩子有一个为空时,返回不为空的孩子节点的深度当 root 节点左右孩子都不为空时,返回左右孩子较小深度的节点值递推关系:遍历二叉树复杂度class Solution { public int minDepth(TreeNode root) { if(root ==原创 2020-07-28 15:08:39 · 173 阅读 · 2 评论 -
[能力提升][费曼学习法]学习方法
【背景知识】费曼学习法费曼学习法可以简化为四个单词:Concept (概念)、Teach (教给别人)、Review (评价)、Simplify (简化)。第一步:把它教给一个小孩子。第二步:回顾。第三步:将语言条理化,简化。第四步(可选):传授一、关于学习我们大部分人的学习,通常是处于无意识的状态。觉得自己总是在不停地看新东西,但是实际上都是浮光掠影、浅尝辄止,不会使用,甚至记不住概念。有时候,我们仅仅是觉得蹉跎了岁月,假装性学习几下安慰一下内心而已。关于学习的吸收率:听讲 <转载 2020-07-28 14:22:30 · 341 阅读 · 0 评论 -
[项目经验]玩转开源项目
搞懂一个开源项目的几大步骤细看四大模块转载 2020-07-07 11:07:56 · 535 阅读 · 0 评论 -
Redis面试题
概述什么是RedisRedis有哪些优缺点为什么要用 Redis /为什么要用缓存为什么要用 Redis 而不用 map/guava 做缓存?Redis为什么这么快数据类型Redis有哪些数据类型Redis的应用场景持久化什么是Redis持久化?Redis 的持久化机制是什么?各自的优缺点?如何选择合适的持久化方式Redis持久化数据和缓存怎么做扩容?过期键的删除策略Redis的过期键的删除策略Redis key的过期时间和永久有效分别怎么设置?转载 2020-06-25 00:54:24 · 297 阅读 · 0 评论 -
MyBatis面试题(2020最新版)
MyBatis简介MyBatis是什么?ORM是什么为什么说Mybatis是半自动ORM映射工具?它与全自动的区别在哪里?传统JDBC开发存在的问题JDBC编程有哪些不足之处,MyBatis是如何解决这些问题的?Mybatis优缺点MyBatis框架适用场景Hibernate 和 MyBatis 的区别MyBatis的解析和运行原理MyBatis编程步骤是什么样的?请说说MyBatis的工作原理MyBatis的功能架构是怎样的JDBC API 允许用户访问任.转载 2020-06-14 18:10:31 · 2321 阅读 · 0 评论 -
[剑指offer][JAVA]面试题第[21]题[调整数组顺序使奇数位于偶数面前][双指针]
【问题描述】[简单]输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。 示例:输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是正确的答案之一。 【解答思路】1. 双指针时间复杂度:O(N) 空间复杂度:O(1)class Solution { public int[] exchange(int[] nums) { int i = 0,转载 2020-06-11 23:23:18 · 143 阅读 · 0 评论 -
Spring Cloud面试题
为什么需要学习Spring Cloud什么是Spring Cloud设计目标与优缺点设计目标优缺点Spring Cloud发展前景整体架构主要项目Spring Cloud ConfigSpring Cloud NetflixSpring Cloud BusSpring Cloud ConsulSpring Cloud SecuritySpring Cloud SleuthSpring Cloud StreamSpring Cloud TaskS转载 2020-06-11 10:55:07 · 176 阅读 · 0 评论 -
Spring Boot面试题
概述什么是 Spring Boot?Spring Boot 有哪些优点?Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?配置什么是 JavaConfig?Spring Boot 自动配置原理是什么?你如何理解 Spring Boot 配置加载顺序?什么是 YAML?YAML 配置的优势在哪里 ?Spring Boot 是否可以使用 XML 配置 ?spring boot 核心配置文件是什么?bootstrap.properties 和 applic转载 2020-06-10 11:38:08 · 151 阅读 · 0 评论 -
Spring面试题
Spring面试题Spring概述(10)什么是spring?Spring框架的设计目标,设计理念,和核心是什么Spring的优缺点是什么?Spring有哪些应用场景Spring由哪些模块组成?Spring 框架中都用到了哪些设计模式?详细讲解一下核心容器(spring context应用上下文) 模块Spring框架中有哪些不同类型的事件Spring 应用程序有哪些不同组件?使用 Spring 有哪些方式?Spring控制反转(IOC)(13)什么是Spring IOC 容器?控制反转(IoC)有什么作用转载 2020-06-08 19:33:07 · 284 阅读 · 0 评论 -
并发编程面试题
基础知识并发编程的优缺点为什么要使用并发编程(并发编程的优点)并发编程有什么缺点并发编程三要素是什么?在 Java 程序中怎么保证多线程的运行安全?并行和并发有什么区别?什么是多线程,多线程的优劣?线程和进程区别什么是线程和进程?进程与线程的区别什么是上下文切换?守护线程和用户线程有什么区别呢?如何在 Windows 和 Linux 上查找哪个线程cpu利用率最高?什么是线程死锁形成死锁的四个必要条件是什么如何避免线程死锁创建线程的四种方式创建线程有哪几种方式?说一下 r转载 2020-06-06 00:32:47 · 203 阅读 · 0 评论 -
架构设计&分布式&数据结构与算法面试题
目录架构设计请列举出在JDK中几个常用的设计模式?什么是设计模式?你是否在你的代码里面使用过任何设计模式?静态代理、JDK动态代理以及CGLIB动态代理静态代理动态代理cglib代理单例模式工厂模式观察者模式装饰器模式秒杀系统设计分布式分布式概述分布式集群微服务多线程高并发分布式系统设计理念分布式系统的目标与要素分布式系统设计两大思路:中心化和去中心化分布式与集群的区别是什么?CAP定理CAP定理的证明BASE理论BASE理论的核心思想BASE理论三要素1. 基本可用2. 软状态3. 最终一致性数据结构与算转载 2020-06-03 22:16:41 · 847 阅读 · 0 评论 -
Java异常面试题
Java异常架构与异常关键字Java异常简介Java异常架构1. Throwable2. Error(错误)3. Exception(异常)运行时异常编译时异常4. 受检异常与非受检异常受检异常非受检异常Java异常关键字Java异常处理声明异常抛出异常捕获异常如何选择异常类型常见异常处理方式直接抛出异常封装异常再抛出捕获异常自定义异常try-catch-finallytry-with-resourceJava异常常见面试题1. Error 和 Exception 区别是什么?2. 运行时异常和一般异常(受转载 2020-06-02 22:27:09 · 225 阅读 · 0 评论 -
Java集合容器面试题
集合容器概述什么是集合集合的特点集合和数组的区别使用集合框架的好处常用的集合类有哪些?List,Set,Map三者的区别?List、Set、Map 是否继承自 Collection 接口?List、Map、Set 三个接口存取元素时,各有什么特点?集合框架底层数据结构哪些集合类是线程安全的?Java集合的快速失败机制 “fail-fast”?怎么确保一个集合不能被修改?Collection接口List接口迭代器 Iterator 是什么?Iterator 怎转载 2020-05-29 14:13:59 · 276 阅读 · 0 评论 -
Java虚拟机(JVM)面试题大集合
Java内存区域说一下 JVM 的主要组成部分及其作用?说一下 JVM 运行时数据区深拷贝和浅拷贝说一下堆栈的区别?队列和栈是什么?有什么区别?HotSpot虚拟机对象探秘对象的创建为对象分配内存处理并发安全问题对象的访问定位句柄访问直接指针内存溢出异常Java会存在内存泄漏吗?请简单描述垃圾收集器简述Java垃圾回收机制GC是什么?为什么要GC垃圾回收的优点和原理。并考虑2种回收机制垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行转载 2020-05-28 11:05:15 · 446 阅读 · 0 评论 -
Java基础知识面试题
1.Java概述JVM、JRE和JDK的关系JVMJava Virtual Machine是Java虚拟机,Java程序需要运行在虚拟机上,不同的平台有自己的虚拟机,因此Java语言可以实现跨平台。JREJava Runtime Environment包括Java虚拟机和Java程序所需的核心类库等。核心类库主要是java.lang包:包含了运行Java程序必不可少的系统类,如基本数据类...转载 2020-05-23 00:30:45 · 238 阅读 · 0 评论 -
[Markdown语法][快速入门][CSDN]
Markdown语法【使用建议】快捷键目录标题文本样式列表链接代码片表格注释 & 注脚自定义列表LateX数字公式插入甘耐图插入UML图插入Mermaid流程图插入Flowchart流程图【使用建议】Markdown编辑器最右栏 选择相应模块 复制后直接在原来的基础上改快捷键目录Markdown 语法展示效果标题- Markdown 语法...原创 2020-04-26 11:38:14 · 140 阅读 · 0 评论 -
[Java学习资料] [成长之路]
[背景]网上学习资料千千万万,成长之路千千万万,各取所需JAVA基础网站https://www.runoob.com/java/java-tutorial.htmlhttps://www.w3cschool.cn/java/dict公众号书籍算法网站labuladong https://github.com/labuladong/fucking-algorithmliwei...原创 2020-04-23 15:58:44 · 223 阅读 · 0 评论 -
[如何做研究][如何写论文]
###音频沈向洋:有效的科研法则科学上网:https://www.youtube.com/watch?v=U6r3R87AKHI&feature=youtu.be###视频###文章【经典重温】MIT人工智能实验室: 如何做研究?机器学习研究者的养成指南,吴恩达建议这么读论文周志华[外链图片转存失败,源站可能有防盗链机制...原创 2020-04-15 18:06:17 · 349 阅读 · 3 评论 -
[算法][二分查找][排除法]
####最基本的二分查找算法「搜索区间」是 [left, right]nums[mid] == target 时可以立即返回int binary_search(int[] nums, int target) { int left = 0, right = nums.length - 1; while(left <= right) { int mid = left ...原创 2020-04-06 15:47:51 · 472 阅读 · 0 评论 -
[Java]中[this][super]用法总结
thisthis是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针。this的用法在java中大体可以分为3种:1.普通的直接引用这种就不用讲了,this相当于是指向当前对象本身。2.形参与成员名字重名,用this来区分:class Person { private int age = 10; public Person(){ System....转载 2020-04-02 10:47:07 · 86 阅读 · 0 评论 -
[Leetcode][JAVA][第912题][排序算法]
【问题描述】给你一个整数数组 nums,将该数组升序排列。示例 1:输入:nums = [5,2,3,1]输出:[1,2,3,5]【解答思路】1.插入排序(熟悉)每次将一个数字插入一个有序的数组里,成为一个长度更长的有序数组,有限次操作以后,数组整体有序。优化:「将一个数字插入一个有序的数组」这一步,可以不使用逐步交换,使用先赋值给「临时变量」,然后「适当的元素」后移,空出一个...转载 2020-03-31 21:48:59 · 425 阅读 · 2 评论 -
【软考】[信息安全工程师]
【背景】有一定的基础,于2019年5月的考试上岸,复习了两周左右。奥里给!【备考资料】【参考网站】信管网 http://www.cnitpm.com/aq/月梦工作室 https://www.moondream.cn/含历年试题以及参考答案【参考教材】信息安全工程师五天修炼【大题重要考点】密码学内存泄漏防火墙【参考复习资料】CSDN博主关于参考知识点思维导图+...原创 2020-03-29 16:22:36 · 549 阅读 · 0 评论 -
计算机论文搜索技巧【二】
##善用谷歌学术####本文以“blockchain”为例1.创建快讯当你确定了研究方向时,订阅功能会主动推送相关文章,是被动输入的神器2.善用“左栏”筛选条件3.善用文章摘要下“图标”扩展思路如何下载文章未完待续…...原创 2020-03-25 21:58:15 · 214 阅读 · 0 评论 -
[高效时间管理]复盘篇
#【背景】2019年本人在公众号中阅读了《时间管理,这篇就够了》,学习了其中的内容并开始记录每日所做,偶尔晚上进行复盘,对督促学习和反思起到一定的作用,故向大家分享经验。为什么要时间管理?时间管理不在于时间计划,我们每天所做的时间计划一般越详细越难执行,我们何不在一天的结束的时候去对我们每天所做的事情做一个简单的记录和复盘,以便知道自己在时间分配上的优点和不足,知道自己哪一段时间能高效工作和...原创 2020-03-12 23:52:35 · 687 阅读 · 1 评论 -
[高效时间管理] 番茄工作钟 windows版本
【背景】2019年本人学会了记录每日时间(将每日分割成半小时一段的时间) ,但似乎是为了完成而完成,效果不佳,手机端的番茄钟总是诱惑太多,就在准备tb计时器的时候,发现了宝藏软件。个人整理知识点思维导图软件状态说明一件事情没解决前,状态应该是应该是待处理,但GTD的原则是你得先记下来;开始处理事情了,一个任务做了一点,发现暂时因为其他因素要等,当前能干的已经干了,其余的啥也干不了了,状...原创 2020-03-12 22:30:23 · 4067 阅读 · 0 评论