4 ⁢⁢⁢ 

我要认证

温故而知新,优秀是一种习惯,而成功靠不断学习积累

等级
TA的排名 1w+

小招喵跑步(动态规划)

题目题目描述小招喵喜欢在数轴上跑来跑去,假设它现在站在点n处,它只会3种走法,分别是:1.数轴上向前走一步,即n=n+12.数轴上向后走一步,即n=n-13.数轴上使劲跳跃到当前点的两倍,即n=2*n现在小招喵在原点,即n=0,它想去点x处,快帮小招喵算算最快的走法需要多少步?输入描述:小招喵想去的位置x输出描述:小招喵最少需要的步数示例1输入3输出3题目链接解题思路很明显是一道动态规划题目设dp[i]表示到达i点的最少步数最少就需要考虑两倍的走法如果当前位置

2020-08-23 10:52:58

如何理解java代理模式?

需求假设现在有一个需求:在项目现有所有类的方法前后打印日志。你如何在不修改已有代码的前提下,如何完成这个需求?直切主题那这个时候我们可以使用动态代理要理解动态代理首先要理解代理模式什么是代理模式?有一个打印机的类public class Printer { public void print(){ System.out.println("打印!"); }}我想在打印之前先记录一下日志怎么做?最简单的方法:在打印的功能前面直接加上记录日志的功能。publ

2020-08-16 10:40:13

localstorage用法

一、什么是localStorage、sessionStorage在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同。在HTML5中,本地存储是一个window的属性,包括localStorage和sessionStorage,从名字应该可以很清楚的辨认二者的区别,

2020-08-12 11:38:05

springboot实现热部署

IDEA自动make配置目的是开启IDEA自动make功能File->Setting->Build,Execution,Deployment->Complier,勾选Build Projectautomatically 快捷键:Ctrl+Shift+A,然后输入Registry,找到compiler.automake.allow.when.app.running并勾选SpringBoot maven配置 <dependency> ..

2020-08-12 11:33:16

远程连接服务器mysql数据库

登录服务器,登陆MySQL数据库命令如下:mysql -u root -p pwd;查询MySQL数据库是否允许远程ip访问,命令如下:use mysql;select host, user from user;查询结果为127.0.0.1或者localhost或者当前服务器域名,则表示不允许远程连接。开启远程访问操作。命令如下:GRANT ALL PRIVILEGES ON . TO ‘root’@’%'IDENTIFIED BY ‘*****’ WITH GRANT OPTIO..

2020-08-12 11:32:23

Thymeleaf初入坑(一)

1.什么是ThymeleafThymeleaf是⾯向Web和独⽴环境的现代服务器端Java模板引擎,能够处 理HTML,XML,JavaScript,CSS甚⾄纯⽂本。Thymeleaf旨在提供⼀个优雅的、⾼度可维护的创建模板的⽅式。 为了实 现这⼀⽬标,Thymeleaf建⽴在⾃然模板的概念上,将其逻辑注⼊到模板 ⽂件中,不会影响模板设计原型。 这改善了设计的沟通,弥合了设计和 开发团队之间的差距。Thymeleaf从设计之初就遵循Web标准------特别是HTML5标准 ,如果需 要,Thyme

2020-08-12 11:31:09

撸一个Springboot自动登录功能

本文结合Shiro手撸一个自动登录功能我们知道Cokkie都是存在本地的,而Session是存在服务器上的。我们创建了普通对话Session它的生命周期只存在于浏览器开启关闭期间。那我们难道需要每次进网址都需要登录?那也太麻烦了,虽然Shiro框架有记住我功能,但是发散思维自己动手!纯手撸,方法粗糙,望大佬指教。自动登录功能流程思路:1.(LoginController)登陆过程中 判断数据库中该登录用户是否有token,如果没有(表示新用户)则在服务器数据库中生成token subj

2020-08-12 11:29:54

IDEA中配置MySQL出现Server returns invalid timezone问题解决方法

原因:首先,出现该问题的原因是MySQL驱动jar中的默认时区是UTC。UTC代表的是全球标准时间 ,但是我们使用的时间是北京时区也就是东八区,领先UTC八个小时。因为时区不一致,所以提示Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ property manually解决方案:...

2020-08-10 15:39:54

IDEA连接mysql报错!Server returns invalid timezone. Go to ‘Advanced‘ tab and set ‘serverTimezone‘ prope

在用idea连接mysql数据库时报错**提示:**服务器返回无效时区。进入“高级”选项卡,手动设置“serverTimezone”属性。解决方案:进入命令窗口(Win + R),连接数据库 mysql -hlocalhost -uroot -p,回车,输入密码,回车,如图:继续输入 show variables like’%time_zone’; (注意不要漏掉后面的分号),回车,如图:显示 SYSTEM 就是没有设置时区啦。现在我们来设置时区。输入set global time

2020-08-08 16:04:43

Arrays.sort()对二维数组排序

对二维数组{x,y}的y进行从小到大排序public class Test { public static void main(String[] args) { int[][] nums = {{3, 1}, {4, 2}}; Arrays.sort(nums, (event1, event2) -> { return event1[1] == event2[1] ? event1[0] - event2[0] : event1[1]

2020-08-03 10:05:44

Spring Context初始化流程(源码分析)

不管是XML配置的Context,还是Spring Boot的Context,还是Web服务中的Context,创建后都会调用AbstractApplicationContext类的refresh()方法。定位到AbstractApplicationContext下的refresh()方法,开始分析。整体流程如下: @Override public void refresh() throws BeansException, IllegalStateException { //1 synch

2020-08-02 11:39:09

你真的了解String的创建吗?

起因在文章的开始之前,有一个问题需要思考。String s = "MRyan";String s = new String("MRyan");以上是String的两种赋值方式,它们有什么区别吗?它们在内存中有几个实例?存储在哪个区域里?实例存储在哪里?字面量存储在哪里?想要回答这些问题,需要对JVM有一定的了解狂补JVM基础知识都知道JVM的内存结构包括堆,虚拟机栈,方法区,程序计数器,本地方法栈。其中和本文章有关系的1. 堆:作为整个JVM内存结构中占用最大的一块空间,存放对象实例和

2020-07-29 17:23:01

【剑指 Offer 57 - II】和为s的连续正数序列 (滑动窗口)

题目题目连接输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。示例 1:输入:target = 9输出:[[2,3,4],[4,5]]示例 2:输入:target = 15输出:[[1,2,3,4,5],[4,5,6],[7,8]]限制:1 <= target <= 10^5解题思路1没啥技巧纯暴力但超时class Solution { public

2020-07-28 17:38:49

【剑指 Offer 57】 和为s的两个数字

题目题目链接输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。示例 1:输入:nums = [2,7,11,15], target = 9输出:[2,7] 或者 [7,2]示例 2:输入:nums = [10,26,30,31,47,60], target = 40输出:[10,30] 或者 [30,10]限制:1 <= nums.length <= 10^51 <= nums[i] &lt

2020-07-28 13:16:04

【剑指 Offer 53 - I】 在排序数组中查找数字 I

题目题目链接统计一个数字在排序数组中出现的次数。示例 1:输入: nums = [5,7,7,8,8,10], target = 8输出: 2示例 2:输入: nums = [5,7,7,8,8,10], target = 6输出: 0限制:0 <= 数组长度 <= 50000解题思路二分查找缩减范围利用二分的思想,排除数组中左侧不包含给定数字的部分,再另一部分中遍历查找输出出现次数代码class Solution { public int search

2020-07-27 16:43:37

SpringBoot启动流程源码分析

源码分析在SpringApplication.run(SystemmanageApplication.class, args) 入口打个断点,debug进去。定位到public ConfigurableApplicationContext run(String… args)方法,开始分析吧public ConfigurableApplicationContext run(String... args) { // 创建并启动计时监控类 StopWatch stopWatch = n

2020-07-27 08:44:57

@Component 和 @Bean 的区别

转载于:链接两者的联系和区别@Component 和 @Bean 是两种使用注解来定义bean的方式。@Component(和@Service和@Repository)用于自动检测和使用类路径扫描自动配置bean。注释类和bean之间存在隐式的一对一映射(即每个类一个bean)。这种方法对需要进行逻辑处理的控制非常有限,因为它纯粹是声明性的。@Bean用于显式声明单个bean,而不是让Spring像上面那样自动执行它。它将bean的声明与类定义分离,并允许您精确地创建和配置bean。@Compo

2020-07-26 21:15:36

【剑指 Offer 48】最长不含重复字符的子字符串

题目给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。 请注意,你的答案必须是 子串 的长度,"pwke" 是一个子序列,不是子

2020-07-26 15:26:31

【剑指 Offer 47】礼物的最大价值 (动态规划)

题目题目链接在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?示例 1:输入: [ [1,3,1], [1,5,1], [4,2,1]]输出: 12解释: 路径 1→3→5→2→1 可以拿到最多价值的礼物提示:0 < grid.length <= 2000 < g

2020-07-26 12:23:49

【剑指 Offer 46】 把数字翻译成字符串 (动态规划)

题目题目链接给定一个数字,我们按照如下规则把它翻译为字符串:0 翻译成 “a” ,1 翻译成 “b”,……,11 翻译成 “l”,……,25 翻译成 “z”。一个数字可能有多个翻译。请编程实现一个函数,用来计算一个数字有多少种不同的翻译方法。示例 1:输入: 12258输出: 5解释: 12258有5种不同的翻译,分别是"bccfi", "bwfi", "bczi", "mcfi"和"mzi"提示:0 <= num < 231代码动态规划思想首先我们存在num=t(1)

2020-07-25 15:02:43

查看更多

勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 脉脉勋章
    脉脉勋章
    绑定脉脉第三方账户获得
  • 签到王者
    签到王者
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv3
    阅读者勋章Lv3
    授予在CSDN APP累计阅读博文达到30天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 原力探索
    原力探索
    参与《原力计划【第二季】——打卡挑战》的文章入选【每日精选】的博主将会获得此勋章。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。
  • 原力探索 · S
    原力探索 · S
    在《原力计划【第二季】》打卡挑战活动中,发布 12 篇原创文章参与活动的博主,即可获得此勋章。(本次活动结束后统一统计发放)
  • 分享学徒
    分享学徒
    成功上传1个资源即可获取