自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 手撕排序-快速排序Java

快速排序先附赠一张时间复杂度表图片来源:https://www.cnblogs.com/nannanITeye/archive/2013/04/11/3013737.html把大象装进冰箱需要几步?恭喜,学会抢答了,三步那实现快排呢?大体分为四步第一步:走个形式,用来引出真正得快排! public int[] MySort (int[] arr) { //引出快排实体 quickSort(arr,0,arr.length-1); return arr;

2021-07-12 19:19:01 283

原创 背包问题--0-1背包

背包问题思路整理 – 自存

2021-07-12 11:47:32 93

原创 IDEA连接数据库timeZone问题

首先,你需要找到Database的位置,如下图所示:step1:step2:step3:user:用户名Password:密码Database:连接的数据库名将上述信息都填完之后,点击testConnecttion,如果出现服务器返回无效的时区。需要到Advanced设置“serverTimeZone”属性。正题来了:方法一:直接在Advanced页面修改serverTimeZone。后面填写 “Asia/Shanghai”方法二:win+R–>cmd–>mysql -u

2021-07-09 11:11:40 1005

原创 leetcode22-括号生成

22. 括号生成回溯算法回溯算法就是遍历所有的可能,将满足要求的结果加入到结果集中。本题要求给出所有可能的并且有效的括号组合。有效的括号即意味着“(”和“)”个数相等,且先左后右。因此,本题基于如下回溯体进行遍历。//left代表左括号的个数//right代表右括号的个数public void backTrack(StringBuilder sb,int left,int right,int n) 加入到结果集中的字符串必须满足 左括号 == 右括号 == nif(left == r

2021-06-20 21:22:01 152

原创 剑指Offer26-树的子结构

剑指 Offer 26. 树的子结构思路就是,对A进行遍历,判断A的节点是否就是恰好包含B节后的根结点。(和最长回文子串思路类似~)代码如下://遍历Apublic boolean isSubStructure(TreeNode A, TreeNode B) { if(B==null){ return false; } if(A==null){ return false; } if(dfs(A,B)){ return true; } return isSubStructur

2021-06-15 20:03:13 42

原创 leetcode5-最长回文子串

5. 最长回文子串动态规划基于动态规划实现,主要还是分为如下三个阶段:确认选择:从题中可知,要求找到s中最长的回文子串。根据回文特性,每一个对称的位置相等,则就是回文子串。因此,本题的选择为:是回文子串/不是回文子串。定义dp数组根据选择 ,可以确定对dp数组的类型的定义,即为布尔型。dp[i][j]代表从i到j的子串是否为回文子串。确认状态转移方程根据选择与对数组的定义,分为如下情况进行转移:当 i == j 时,理所当然,dp[i][j] = true;当 j - i ==

2021-06-15 15:44:11 62

原创 leetcode1312-让字符串成为回文串的最少插入次数

1312. 让字符串成为回文串的最少插入次数动态规划题意表明,该题对于每一种状态可能的选择为:插入节点/不插入节点。所谓状态,简而言之就是对dp数组的定义。是一维?二维?参数的含义有是什么?回文串–就是以中心为界,向两侧延伸,字符对称。因此,本题参数涉及到的即为左、右下标,所以dp函数设置为二维数组dp[i][j],其中i代表左侧下标,j代表右侧下标,dp[i][j]代表的述值就是从i到j变为回文字符串需要的最小步数。转移函数分为i和j所代表的字符相等/不相等,两种情况。相等:如果相等,

2021-06-11 21:55:45 304 2

原创 力扣473-火柴拼正方形

473. 火柴拼正方形回溯方法对于所给的火柴棍数组,因题中要求“不能折断火柴”,所以需要先对数组和进行一个判断,判断是否满足整除4的初始条件。随后,编写回溯体。对于每一根火柴,拥有四种边进行选择 - 上、下、左、右。判断是否能用所有的火柴拼成正方形,即判断在遍历完数组的所有元素之后,是否满足 上边和 == 下边和 == 左边和 == 右边和。然后,在纯暴力的解法下,或者我的解法下,设立一个全局变量flag,用于记录是否存在满足条件的情况。代码如下:boolean flag = fa

2021-06-07 16:17:58 314

原创 SSM框架-MyBatis学习笔记(1)

首先,分享MyBatis官方文档MyBatis3|入门该文档介绍了MyBatis的相关使用,值得一看哦~1、MyBatis的配置创建父Maven工程,在pom.xml中配置相关使用信息<dependencies> <!--mysql--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java

2021-06-07 14:55:42 84 1

原创 回溯之N皇后问题

51. N 皇后重点在于如何判断合理。针对本题,为同一列与左右对角线不得同时出现皇后。下述两种思想相同,只是对皇后位置的体现形式不同。代码如下:方法一是依据二维数组实现皇后的位置摆放。List<List<String>> res = new ArrayList<>(); public List<List<String>> solveNQueens(int n) { char[][] board = new char[n

2021-06-04 09:51:02 58

原创 动态规划之打家劫舍

198. 打家劫舍代码如下:public int rob(int[] nums) { if(nums.length == 1){ return nums[0]; } int[] dp = new int[nums.length]; dp[0] = nums[0]; dp[1] = Math.max(nums[0],nums[1]); for(int i = 2; i < nums.length; i++){ dp

2021-06-02 22:01:53 53

原创 动态规划标签

跟着labuladong的来吧,先~322. 零钱兑换代码如下:public int coinChange(int[] coins, int amount) { int dp[] = new int[amount+1]; Arrays.fill(dp,amount+1); dp[0] = 0; for(int i = 1; i < dp.length; i++) { for(int j = 0; j < coin

2021-06-02 20:12:56 88

原创 Maven的安装与配置

Maven的安装与配置1.官网下载MavenMaven官网点击Download下载最新版本下载完成后,存放到自己喜欢的文件夹中(我是远离C盘了),将文件解压 :D:\Program Files\apache-maven-3.8.1(我的存放路径)记住这个路径2.配置环境变量设置-》搜索栏中搜索环境变量-》点它点击用户变量中的新建双击用户变量中的Path,添加如下的变量打开命令窗口,输入 mvn -v安装成功!3.配置setting.xml在此之前,再找一个自己喜欢的文件夹

2021-06-02 14:54:01 84

原创 520

哈哈哈哈哈,借着今天的特殊气氛,刷个leetcode可好692. 前K个高频单词代码如下:public List<String> topKFrequent(String[] words, int k) { Map<String,Integer> map = new TreeMap<>(); for(String s: words) { map.put(s, map.getOrDefault(s, 0)+1); } List<Ma

2021-05-20 13:29:39 72

空空如也

空空如也

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

TA关注的人

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