自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 Spring Cloud Alibaba快速上手、项目搭建教程

因为之前学过Eureka 所以很多基础的设置就不记录了我的学习demo仓库-CloudBase几个仓库供学习参考Spring Cloud基础教程涵盖大部分核心组件使用的Spring Cloud教程1.版本选择2.Nacos作为注册中心和配置中心注册中心下载自行百度 顺便可以把sentinal-dashboard也下载了 跟Eureka不同 nacos可以直接使用jar包启动就行了然后访问localhost:8848/nacos 就可以进入页面了 账号密码都是nacos (senti

2021-01-04 17:36:32 669

原创 mysql锁的相关知识

1、锁的分类1.1从对数据操作的类型来分读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响。    1.如果某一个会话 对A表加了read锁,则 该会话 可以对A表进行读操作、不能进行写操作; 且 该会话不能对其他表进行读、写操作。2.即如果给A表加了读锁,则当前会话只能对A表进行读操作。某会话给某个表加了读锁,所有的会话都能对该表进行读操作,不能进行写操作,除非该会话释放读锁。写锁(排它锁):当前写操作没有完成前,它会阻断其他写锁和读锁。当前会话(会话0) 可以对加了写锁的

2020-12-28 15:25:19 152

原创 面试_MySQL

准备面试时看的各种做的一些笔记 可能有点乱1.MySQL 三大范式第一范式:要求数据库表中的每一列都是不可分割的基本数据项,同一列中不能有多个值(所有字段值都是不可分解的原子值)第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。第二范式:满足第二范式必须先满足第一范式第二范式要求实体中每一行的所有非主属性都必须完全依赖于主键、非主属性必须完全依赖于主键完全依赖:要求不允许存在非主属性依赖于主键中的某一部分属性意思就是必须依赖主键来保持这行数据的唯一性,

2020-12-28 15:24:14 488

原创 Redis 学习笔记

RedisRedis是一种基于键值对的NoSql数据库。与很多键值对数据库不同的是,Redis中的值是有string、hash、list、set、zset、Bitmaps、HyperLogLog、GEO等多种数据结构和算法组成,因此redis可以满足很多应用场景,而且因为redis会将所有数据都放在内存中,所以它的读写性能非常惊人。不仅如此,redis还可以将内存的数据利用快照和日志的形式保存到硬盘上,这样在断电或故障是,内存中的数据不会丢失。此外,redis还提供了键过期、发布订阅、事务、流水线、L

2020-12-24 10:27:06 298

原创 SpringBoot03_数据检验、Profile切换

JSR303数据检验如何使用Springboot中可以用**@validated**来校验数据,如果数据异常则会统一抛出异常,方便异常中心统一处理。我们这里来写个注解让我们的name只能支持Email格式;@Component //注册bean@ConfigurationProperties(prefix = "person")@Validated //数据校验public class Person { @Email(message="邮箱格式错误") //name必须是邮箱格式

2020-12-16 10:47:49 109

原创 SpringBoot04_配置文件相关

配置文件SpringBoot使用一个全局配置文件,且配置文件的名称是固定的application.properties语法结构 key=valueapplication.yaml(application.yml)​ 语法结构key: value (注意:后有一个空格)**配置文件的作用 :**修改SpringBoot自动配置的默认值,因为SpringBoot在底层都给我们自动配置好了;比如我们可以在配置文件中修改Tomcat 默认启动的端口号!测试一下!server.port=8081

2020-12-16 10:45:36 85

原创 SpringBoot02_自动配置原理以及启动流程

### @SpringbootApplication这个注解标记的类为Springboot程序的主配置类,进入这个注解```java@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan(excludeFilters = { @Filter(type ...

2020-12-16 10:07:24 239

原创 SpringBoot01_简单搭建一个项目

回顾SpringSpring是一个开源的轻量级的Java开发框架(framework),为了解决企业级应用开发的复杂性而创建的,简化开发Spring是如何简化Java开发的1、基于POJO的轻量级和最小侵入性编程,所有的东西都是bean2、通过IOC 依赖注入(DI)和面向接口实现松耦合3、基于切面AOP和惯例进行声明式编程4、通过切面和模板减少样式代码、xxxTemplate什么是SpringBoot随着 Spring 不断的发展,涉及的领域越来越多,项目整...

2020-12-15 19:06:42 135

原创 Maven相关知识学习

DepencyManagement与Dependencies1.DepencyManagement应用场景当我们的项目模块很多的时候,我们使用Maven管理项目非常方便,帮助我们管理构建、文档、报告、依赖、scms、发布、分发的方法。可以方便的编译代码、进行依赖管理、管理二进制库等等。由于我们的模块很多,所以我们又抽象了一层,抽出一个itoo-base-parent来管理子项目的公共的依赖。为了项目的正确运行,必须让所有的子项目使用依赖项的统一版本,必须确保应用的各个项目的依赖项和版本一致,才能

2020-12-15 19:04:32 115

原创 Java时间类的使用、转换

Java时间类的使用、转换Date与String之间的转换都要使用SimpleDateFormat 根据格式来进行转换 parse() format() Date初始化时可以传入时间戳LocalDateTime与String之间的转换 使用到DateTimeFormatter 通过静态方法ofPattern(String 格式)来获取到DateTimeFormatter的对象然后可以通过LocalDateTime.parse(String,DateTimeFormatter)来将字符串转为Loc

2020-12-15 19:02:30 138

原创 git基本操作学习

下载安装git 用户名邮箱这些基础操作百度1.创建仓库创建一个新的文件夹后 然后右键 git bash here输入命令git init2.git add命令git add filename(要带文件格式)将一个新建文件或者修改了文件添加到暂存区3.git commit提交将所有在暂存区中的文件都一次性提交当前分支上(只有git add在暂存区的才会)一般使用 git commit -m xxxx(xxx是为提交的信息备注)4.git...

2020-12-15 18:58:16 160

原创 深搜回溯解决n皇后的优化--对称优化

因为有镜面对称,那么可以让第一行放的皇后只放在左半边,其他行的皇后都能任意放需要注意的是当奇数棋盘时,如果第一行的皇后放在中间,那么左右对称中会重复,那么就需要将第二行的皇后也只放左半边即可。自己在写时对于列这个边界参数出错了。。。 因为自己写的是从下标0开始,没有太在意这个和在遍历列时的<= 所以浪费了很多时间。public class n皇后对称优化 {...

2019-04-27 16:07:02 582

转载 贪心-哈夫曼编码(Java)

https://blog.csdn.net/sinat_22828505/article/details/50364158https://blog.csdn.net/likunkun__/article/details/80258515https://blog.csdn.net/lican19911221/article/details/25539695

2019-04-12 14:26:15 491

原创 归并排序的优化--自然归并排序

不知道怎么将这个算法思想表达的更好,也不知道自己的理解的是否对黑体的注释是普通的自然归并,从相邻长度为1的子数组段进行合并也就是一开始将每两个相邻元素进行归并,然后再相邻四个元素左右两组都有序的合并成4个有序的........自下向上不断往上归并直到有序 /** 自然合并排序是合并排序算法的一种改进. 自然合并排序:* 对于初始给定的数组,通常存在多个长度大于1的已自然排...

2019-03-27 10:37:08 566

原创 递归的回溯、全排列的交换法、数独游戏(dfs)

回溯:递归调用代表开启一个分支,如果希望这个分支返回后某些数据恢复到分支开启前的状态以便重新开始,就要使用回溯技巧全排列的交换法 数独 部分和 用到了回溯全排列:public class 全排列二 { public static void main(String[] args) { ArrayList<String>...

2019-03-27 10:26:34 254

转载 尺取法

尺取法:https://blog.csdn.net/lxt_lucia/article/details/81091597

2019-03-27 10:19:04 76

原创 第九届蓝桥杯-测试次数

贴一个别人写的:https://blog.csdn.net/hebtu666/article/details/84789853import java.util.Scanner;/* x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机。各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐摔指数来,之后才允许上市流通。x星球有很多高...

2019-03-07 21:11:44 410

原创 数组实现阶乘

//用数组模拟大数相乘/** 例如1*2*3*4=24 那么数组中a[0]=4 a[1]=2 //将大数倒序装进数组* 24*5 = 120 那么就是a[0]*5 = 20 a[1]*5=10 //每一位只能是0-9* 所以需要进位 那么就是a[0]=20%10=0 a[1]=a[1]+a[0]/10=12 a[1] = a[1]%10=2 a[2] = a[2]+a[...

2019-02-28 21:24:57 1822

原创 取石子问题

/** 威佐夫博奕(Wythoff Game):有两堆各若干个物品,两个人轮流从某一堆或同时从两堆中取同样多的物品,规定每次至少取一个,多者不限,最后取光者得胜。这种情况下是颇为复杂的。我们用(a{k},b{k})(a{k} ≤ b{k} ,k=0,1,2,...,n)表示两堆物品的数量并称其为局势,如果甲面对(0,0),那么甲已经输了,这种局势我们称为奇异局势。前几个奇异局势是:(0,0...

2019-02-28 21:23:37 407

原创 全排列的三种算法求解

 import java.util.ArrayList;/* * 编写一个方法,确定某字符串的所有排列组合。 给定一个string A和一个int n,代表字符串和其长度,请返回所有该字符串字符的排列, 保证字符串长度小于等于11且字符串中字符均为大写英文字符,  类似于解决合法括号的思路,遍历字符串,然后把每个字符插在前一个字符里已经得到的集合的每个字符串的的前面 后面 和...

2019-02-25 16:34:20 531

原创 排序算法的总结

排序算法的总结:基础排序a.冒泡 谁大谁上,每一轮都把最大的顶到天花板 效率太低O(n2)——掌握swapb.选择排序,效率较低,但经常用它内部的循环方式来找最大值和最小值——怎么一次性求出数组的最大值和最小值 O(n2) c.插排,虽然平均效率低,但是在序列基本有序时,它很快,所以也有其适用范围 Arrays这个工具类在1.7里面做了较大改动d.希尔(缩小增量排序),是插排的改良,...

2019-02-23 16:04:45 102

原创 归并排序

/* * 归并排序: * 将数组平均分成两个子序列 * 对两个子序列进行递归排序 * 合并已经排序好的两个子元素 * 重点是合并  比如左右两边分别是13579  246810  要怎么才能合成12345678910 * 可以用一个辅助空间来解决 * 用一个新的数组,分别对比左右两组数据,每组从左端开始有一个指针,小的元素就添加进辅助数组,然后向右移动, * 再比较两个指针指向元素...

2019-01-26 22:56:09 126

原创 快速排序

/* * 快速排序: * 1.分解:选取数组a中一个元素a[p]将数组a[n]分成两部分,使得左边a[0...p-1]的值都小于a[p],右边a[p+1...r]的值都大于a[p] * 而a[p]中的p也是由划分过程中求得的 * 2.解决:通过递归调用快速排序,对子数组a[0..p-1]和a[p+1...r]进行排序 * 3.合并:因为子数组都是在原址(原本数组中)是有序的了,所以不需要...

2019-01-26 22:55:36 113

原创 评估算法性能、大O表示法表示时间复杂性

评估算法性能,主要评估问题的输入规模n与元素的访问次数f(n)之间的关系 简单点来说就是大O符号,忽略非主体部分 如常数项以及低阶项例子:1..假设 k=k+5计算一次需要t时间,那么循环n次 总共是nt,根据上面的大O表示法的定义,总能找到一个c使得nt&lt;O(cn),那么这个算法的时间复杂度即为O(n) 2..如图可知两个循环嵌套都为n次循环,那...

2019-01-19 23:15:53 690

原创 希尔排序

   希尔排序其实就是有一个增量将数组分组,在组内进行插入排序,然后增量不断变小,最后为1,所以最后一趟就是为插入排序,但是最后一趟已经基本有序了,所以速度会比插入排序快一些。------------------------------------------------------------------------------------------------------...

2019-01-19 22:05:37 122

原创 递归的初步理解及一些简单的问题用递归实现

怎么判断一个问题能不能用递归来解决需要看这个问题能不能划分为子问题来求解子问题,其实就是下面这个找重复的内容:找重复:把一个复杂的问题划分为稍微简单的子问题(子问题要与原问题是一样的类型才能当做一个新的问题调用自身解决),可以划分为一个子问题加自身解决一部分(阶乘n*(n-1)!,类似于切蛋糕把问题切一刀 自己吃一小部分,剩下的大块给下一 个人切一刀吃小部分,继续给下一个人.....),也可以...

2019-01-19 21:49:42 269

原创 N的N次方的个位数、暴力打表、快速幂取模

N的N次方 取个位数是什么暴力打表就是用比较小的范围看看有什么规律 比如这道题 算出50以内        for(int i=1;i&lt;50;i++) {            int sum =1;            for(int j=1;j&lt;=i;j++) {                sum*=i;                if(sum&gt;10)...

2019-01-17 22:43:26 1349

原创 Java 日期类的一些使用

/*2000年的1月1日,是那一年的第1天。那么,2000年的5月4日,是那一年的第几天?*/看到这道题 所以打算重新学习一下日期类 这也是我的第一篇博客Date类现在用的比较少了,贴一些现在还没过时的方法Date类表示特定的瞬间,精确到毫秒。1、public Date()——分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。1 @Test2 publ...

2019-01-17 22:24:22 315

空空如也

空空如也

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

TA关注的人

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