自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 从0开始搭建SpringBoot+BootStrap的物资管理网站(一)初步集成springboot,mybatis并连接数据库

IDEA从0开始搭建SootStrap+SpringBoot+SpringSecurity+Mybatis+MySQL的物资管理网站(一)前言用到的组件(或技术项)IDEA中创建项目合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的...

2020-01-01 00:39:42 680

原创 设计模式七大设计原则,和单例模式的8种写法(java实现)

设计模式七大设计原则,和单例模式的8种写法(java实现)七大设计原则1.单一职责原则对于类来说,即一个类应该只负责一项职责,否则职责二变更会造成职责一的错误(例如有个dao类即负责user表的操作又负责oder表的操作,则违反了单一职责原则,应该拆分成为2个dao类分别负责user和oder表)。2.接口隔离原则客户端不应该依赖它不需要的接口 ,即一个类对另一个类的依赖应该建立在最小的接口上。解决的方法:将接口拆分成多个接口3.依赖倒置原则(1)高层模块不应该依赖低层模块,二者都应依赖其抽象

2020-07-09 01:03:59 253

原创 Redis的Windows安装(简单易懂,亲测可用)

Redis的Windows安装(简单易懂,亲测可用)Windows安装redisredis配置文件和主从设置总结Windows安装redisredis的安装很简单,首先去:https://github.com/microsoftarchive/redis/releases找到redis的压缩包,然后下载。版本选择3.2.1就好,不知道为啥我图裂了。下载到一个你需要的目录,我放在了D盘,自己建了个redis文件夹。解压后的内容:好了,到这一步我们就可以进行安装配置了。1.临时服务安装 cmd

2020-06-20 11:32:36 792

原创 剑指offer编程题输入n个整数,找出其中最小的k个数java实现(优先队列,大顶堆,小顶堆,排序)

输入n个整数,找出其中最小的k个数java实现题目描述问题分析代码及讲解题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。问题分析这个问题没什么好解释的,尽量不要用双for循环高时间复杂度的方式进行求解就好了。我采用了优先队列的方式(本质上是堆排序)。代码及讲解我的实现方案是将所有需要比较的元素都入优先队列,优先队列本质上是一个小顶堆,顶部的元素是最小的。然后再依次取k个元素。import java.util.Ar

2020-06-14 00:09:32 502

原创 剑指offer编程题求第n个丑数java实现(穷举,队列)

编程题求第n个丑数java实现题目描述问题分析代码解析题目描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。问题分析我第一次看到问题时认为求解方式是寻找丑数的规律,但是发现列举了几个丑数之后没有发现明显的方式可以很好地表示这个问题。之后看到了一个解题思路,就是维护3个队列,list2,list3,list5分别存放*2,*3,*5的丑数,十分精彩。下面详细解释:首

2020-06-13 22:32:43 264

原创 剑指offer编程题和为s的连续正数序列iava实现(穷举)

编程题和为s的连续正数序列iava实现题目描述问题分析代码及解析题目描述小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列?输出描述:输出所有和为S的连续正数序列。序列内按照从小至大的顺序,序列间按照开始数字从小到大的顺序。问题分析

2020-06-13 20:55:09 147

原创 剑指offer编程题青蛙跳台阶变态版java实现(递归,动规)

编程题青蛙跳台阶变态版java实现题目描述问题分析代码级解释题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。青蛙跳台阶的普通版本解析问题分析我们先规定f(n)为剩下n阶台阶数对应的跳法种数,例如f(0)=f(target-target)代表有target级台阶,并且一次性跳了target级,这时只有一种跳法。f(1)=f(target-(target-1))代表有target级台阶,已经跳过了target-1级台阶,现在还剩一级

2020-06-12 22:27:23 196

原创 剑指offer编程题求数据流中位数java实现及优先队列构造方法Comparator类参数重写compare方法部分源码解释(优先队列-大顶堆-小顶堆)

编程题求数据流中位数java实现(优先队列-大顶堆-小顶堆)题目描述问题分析代码及讲解compare方法的解释PriorityQueue中comparator接口解释重写的compare方法在优先队列中的使用总结题目描述如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。问题

2020-06-08 00:09:27 361

原创 剑指offer编程题斐波那契数列递归/动态规划方法java实现

编程题斐波那契数列递归/动态规划方法(java实现)题目描述问题描述代码及讲解题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。n<=39问题描述这个问题第一眼看上去非常好解决,直接写个递归就解决了,public class Solution { public int Fibonacci(int n) { int first=0; int second=1; if(

2020-06-06 19:50:19 219

原创 剑指offer编程题旋转数组的查找java实现(二分查找)

编程题旋转数组的查找(java实现)题目描述问题分析代码实现题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0问题分析刚看到这个题目我们开始的想法是进行一次for循环遍历,直接求出数组中最小的元素,这样的方法时间复杂度O(n),如果采用另一种方式-二分查找的方法时间复杂

2020-06-06 17:34:37 257

原创 剑指offer编程题二维数组中的查找Java实现

编程题二维数组中的查找(java实现)题目描述问题分析代码和讲解题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。问题分析刚看到这个问题时,我们的第一个想法是进行一次二维数组的遍历,这种方法的时间复杂度是O(n2),此时应该采用另一种方式,由于数组是有序数组,从数组的左下角的元素开始遍历,如果目标大于该数,则直接向右遍历寻找,如果开始遍历的元素大于目标

2020-06-06 16:33:19 164

原创 剑指offer编程题青蛙跳台阶问题Java实现详细解释!(斐波那契数列,动归)(一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法)

编程题青蛙跳台阶问题Java实现题目描述问题分析代码解释总结题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。问题分析我们可以先从简单的情况开始分析,例如只有一级台阶时,青蛙就只有一种跳法,跳一级;有两级台阶时,青蛙有两种跳法,一次跳两级或者每次跳一级,连跳两次;有三级台阶时,青蛙有三种跳法,由于青蛙只有两种跳法,一次跳一级或者一次跳两级,设青蛙先采用第一种方式开始跳,则跳上一级,还剩两级台阶,这时它相当于选择跳上两级台阶

2020-05-28 00:01:21 393

原创 剑指offer编程题按层打印二叉树即上到下按层打印二叉树java实现(二叉树,队列,递归)

剑指offer编程题按层打印二叉树即上到下按层打印二叉树java实现(二叉树,队列)

2020-05-27 00:37:47 238

原创 剑指offer编程题按s形/之字形打印二叉树java实现(二叉树,栈)

编程题按之字形打印二叉树java实现题目描述问题分析我的代码及讲解别人的代码总结题目描述请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。问题分析二叉树的结构:public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) {

2020-05-24 23:53:16 524

原创 剑指offer编程题判断一个二叉树是否为对称的java实现(镜像二叉树,递归)

编程题判断一个二叉树是否为对称的java实现题目描述问题分析代码及解释别人的代码总结题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。问题分析这个问题的切入点是二叉树的镜像,二叉树和它的镜像相同意味着(以下图为例)根节点的左右子树相同,对a而言,左侧的a的左子树b必须等于右侧a右子树的b,余下的结点以此类推,满足这些条件才可以称为同样的。二叉树的结构public class TreeNode { int val = 0;

2020-05-24 20:05:07 264

原创 剑指offer编程题找出二叉树中序遍历的下一个结点Java实现(二叉树,中序遍历)

编程题找出二叉树中序遍历的下一个结点Java实现题目描述问题分析代码及讲解总结题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。问题分析二叉树的结构如下所示,题目中的描述next意思是指向当前节点的父节点。我们要知道中序遍历的含义,先按中序遍历左子树,再输出当前结点,然后再中序遍历右子树。public class TreeLinkNode { int val; TreeLinkNode le

2020-05-24 13:27:53 440

原创 剑指offer重建二叉树算法题Java实现(二叉树,递归)

重建二叉树算法题Java实现题目描述问题分析代码及讲解总结题目描述题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。问题分析二叉树大家都很熟悉,先声明一下二叉树的结构。Definition for binary tree public class TreeNode { int val;

2020-05-24 00:09:03 245

原创 剑指offer剪绳子算法题Java实现(贪心,动态规划)

剪绳子算法题Java实现题目描述问题的分析我的代码别人的代码利用动态规划的求解别人的代码写的是真的好,比较起来自己还差的远,加油吧朋友们!莫愁前路无知己。题目描述给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],…,k[m]。请问k[0]xk[1]x…xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。问题的分析链接:https://www.n

2020-05-22 22:38:38 320

原创 java语言描述基数排序(桶排序)

java语言描述基数排序(桶排序)简单介绍桶排序(基数排序)代码如下简单介绍桶排序(基数排序)具体的文字说明不做介绍,需要可以百度,我只举个栗子。如下每一个蓝色方框代表每一位的“桶”,对个位进行排序,按要排序的数组元素的顺序进行添加排序,先看个位,如下图所示,从0到9,依次添加。注:本文展示的基数排序不能对负数进行排序,若想用基数排序对负数排序需要添加一些方法,请参考他人的文章。个位排序完...

2020-01-28 00:35:23 152

原创 AndroidStudio安装和Genymotion插件的整合

AndroidStudio安装和Genymotion插件的整合@TOCGenymotion2018.10.27的版本AndroidStudio安装和Genymotion插件的整合朋友们你们好!我这是第一次写博客,主要是关于AndroidStudio安装和Genymotion插件的整合时的流程,如果出现错误还请各位大佬指正,谢谢~!另外,转载请注明出处!AndroidStudio的安装现在网...

2018-10-28 01:04:11 2978

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除