自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 LeetCode 506 相对名次 Java实现

LeetCode506题目给出 N 名运动员的成绩,找出他们的相对名次并授予前三名对应的奖牌。前三名运动员将会被分别授予 “金牌”,“银牌” 和“ 铜牌”(“Gold Medal”, “Silver Medal”, “Bronze Medal”)。(注:分数越高的选手,排名越靠前。)示例 1:输入: [5, 4, 3, 2, 1]输出: [“Gold Medal”, “Silver Medal”, “Bronze Medal”, “4”, “5”]解释: 前三名运动员的成绩为前三高的,因此将

2020-09-27 10:31:48 176

原创 LeetCode 412 Fizz Buzz Java实现

LeetCode412题目写一个程序,输出从 1 到 n 数字的字符串表示。如果 n 是3的倍数,输出“Fizz”;如果 n 是5的倍数,输出“Buzz”;3.如果 n 同时是3和5的倍数,输出 “FizzBuzz”。示例:n = 15,返回:[“1”,“2”,“Fizz”,“4”,“Buzz”,“Fizz”,“7”,“8”,“Fizz”,“Buzz”,“11”,“Fizz”,“13”,“14”,“FizzBuzz”]通过次数45,972提交

2020-09-25 22:32:22 284

原创 LeetCode 299 猜数字游戏 Java实现

LeetCode299题目你在和朋友一起玩 猜数字(Bulls and Cows)游戏,该游戏规则如下:你写出一个秘密数字,并请朋友猜这个数字是多少。朋友每猜测一次,你就会给他一个提示,告诉他的猜测数字中有多少位属于数字和确切位置都猜对了(称为“Bulls”, 公牛),有多少位属于数字猜对了但是位置不对(称为“Cows”, 奶牛)。朋友根据提示继续猜,直到猜出秘密数字。请写出一个根据秘密数字和朋友的猜测数返回提示的函数,返回字符串的格式为 xAyB ,x 和 y 都是数字,A 表示公牛,用 B

2020-09-25 21:25:34 1660

原创 LeetCode 535 神仙解法 Java实现

LeetCode 535题目TinyURL 的加密与解密TinyURL是一种URL简化服务, 比如:当你输入一个URL https://leetcode.com/problems/design-tinyurl 时,它将返回一个简化的URL http://tinyurl.com/4e9iAk.要求:设计一个 TinyURL 的加密 encode 和解密 decode 的方法。你的加密和解密算法如何设计和运作是没有限制的,你只需要保证一个URL可以被加密成一个TinyURL,并且这个TinyURL

2020-09-25 20:44:47 133

原创 说人话的五分钟快速简单使用排序--冒泡排序 Java语言

选择一句你喜欢的话概括什么是冒泡排序两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就像水底下的气泡一样逐渐向上冒。冒泡排序的快速使用核心思路快速演示假设待排序的关键字序列是{9, 1, 5, 8 ,7 ,4 ,6 ,2}以下每一行代表交换过后一次的状况9 1 5 8 7 4 2 69 1 5 8 7 2 4 69 1 5 8 2 7 4 69 1 5 2 8 7 4 69 1 2 5 8 7 4

2020-09-25 15:44:30 109

原创 LeetCode 696 计数二进制子串 Java实现

LeetCode696题目给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。重复出现的子串要计算它们出现的次数。示例 1 :输入: “00110011”输出: 6解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”。请注意,一些重复出现的子串要计算它们出现的次数。另外,“00110011”不是有效的子串,因为所有的0(和1)没有组合在一起。示例 2

2020-09-23 11:02:08 96

原创 LeetCode 551学生出勤记录 Java实现

LeetCode551题目给定一个字符串来代表一个学生的出勤记录,这个记录仅包含以下三个字符:‘A’ : Absent,缺勤‘L’ : Late,迟到‘P’ : Present,到场如果一个学生的出勤记录中不超过一个’A’(缺勤)并且不超过两个连续的’L’(迟到),那么这个学生会被奖赏。你需要根据这个学生的出勤记录判断他是否会被奖赏。示例 1:输入: “PPALLP”输出: True示例 2:输入: “PPALLL”输出: False通过次数18,883提交次数36,439代

2020-09-22 20:07:09 224

原创 Java三种使用情况快速对Map进行遍历

当需求Key也需求Value时(最常用) entrySet Map<Character,Integer> map = new HashMap<>(); map.put('a',6); map.put('b',233); map.put('c',969); //## 当需求Key也需求Value时(最常用) for (Map.Entry<Character,Integer> en

2020-09-21 22:28:54 239 1

原创 LeetCode 451 根据字符出现频率排序 Java实现

LeetCode451题目给定一个字符串,请将字符串里的字符按照出现的频率降序排列。示例 1:输入:“tree”输出:“eert”解释:'e’出现两次,'r’和’t’都只出现一次。因此’e’必须出现在’r’和’t’之前。此外,"eetr"也是一个有效的答案。示例 2:输入:“cccaaa”输出:“cccaaa”解释:'c’和’a’都出现三次。此外,"aaaccc"也是有效的答案。注意"cacaca"是不正确的,因为相同的字母必须放在一起。示例 3:输入:“Aabb

2020-09-21 22:13:03 225

原创 LeetCode 049 字母异位词分组 Java实现

LeetCode49题目给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]输出:[[“ate”,“eat”,“tea”],[“nat”,“tan”],[“bat”]]说明:所有输入均为小写字母。不考虑答案输出的顺序。通过次数107,567提交次数169,085代码 //Map用于存储List 左边的String是经过排序后的字符

2020-09-21 16:39:47 97

原创 LeetCode 242 有效的字母异位词 Java实现

LeetCode242题目给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = “anagram”, t = “nagaram”输出: true示例 2:输入: s = “rat”, t = “car”输出: false说明:你可以假设字符串只包含小写字母。进阶:如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?代码class Solution { public boolean isAn

2020-09-20 22:15:09 86

原创 LeetCode 383 赎金信 Java实现

LeetCode383题目定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串 ransom 能不能由第二个字符串 magazines 里面的字符构成。如果可以构成,返回 true ;否则返回 false。(题目说明:为了不暴露赎金信字迹,要从杂志上搜索各个需要的字母,组成单词来表达意思。杂志字符串中的每个字符只能在赎金信字符串中使用一次。)注意:你可以假设两个字符串均只含有小写字母。canConstruct(“a”, “b”) -> false

2020-09-20 21:34:11 269

原创 LeetCode 389 找不同 Java实现

LeetCode389题目给定两个字符串 s 和 t,它们只包含小写字母。字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。请找出在 t 中被添加的字母。示例:输入:s = “abcd”t = “abcde”输出:e解释:‘e’ 是那个被添加的字母。代码这道题和上一道题好像…用了同一种方法,额外数组进行遍历,特定位置++就很轻易地解决了(顺带一提ASCII码转字符原来只要(char)int就好了…class Solution { public cha

2020-09-20 21:22:30 100

原创 LeetCode 387 字符串中的第一个唯一字符 Java实现

LeetCode387题目给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = “leetcode”返回 0s = “loveleetcode”返回 2提示:你可以假定该字符串只包含小写字母。通过次数101,087提交次数215,047代码class Solution { public int firstUniqChar(String s) { int[] a = new int[26]; //有点

2020-09-20 21:11:17 95

原创 LeetCode 151 反转字符串里的单词 Java优雅实现

LeetCode151题目给定一个字符串,逐个翻转字符串中的每个单词。示例 1:输入: “the sky is blue”输出: “blue is sky the”示例 2:输入: " hello world! "输出: “world! hello”解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:输入: “a good example”输出: “example good a”解释: 如果两个单词间有多余的空格,将反转后单词间的空格减

2020-09-19 09:14:36 440

原创 String.split()与正则表达式的快速简单用法

关于splite的用法,我们先来看看API文档是怎么说的public String[] split​(String regex)将此字符串拆分为给定的regular expression的匹配。该方法的工作原理是通过使用给定的表达式和极限参数为零调用双参数split方法。 因此,尾随的空字符串不会包含在结果数组中。例如,字符串"boo:and:foo"使用以下表达式得到以下结果:regex - 分隔正则表达式结果通过将该字符串围绕给定的正则表达式的匹配来计算的字符串数组异常PatternS

2020-09-17 16:10:12 3589

原创 LeetCode 557 反转字符串中的单词III Java实现

LeetCode557题目给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例:输入:“Let’s take LeetCode contest”输出:“s’teL ekat edoCteeL tsetnoc”提示:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。通过次数95,698提交次数130,408代码class Solution { public String reverseWords(String s) {

2020-09-17 11:59:21 128

原创 LeetCode 541 反转字符串II Java实现

LeetCode541题目给定一个字符串 s 和一个整数 k,你需要对从字符串开头算起的每隔 2k 个字符的前 k 个字符进行反转。如果剩余字符少于 k 个,则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。示例:输入: s = “abcdefg”, k = 2输出: “bacdfeg”提示:该字符串只包含小写英文字母。给定字符串的长度和 k 在 [1, 10000] 范围内。代码class Solution { p

2020-09-17 08:46:57 126

原创 LeetCode 344 反转字符串 Java实现

LeetCode344题目编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:[“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]示例 2:输入:[“H”,“a”,“n”,“n”,“a”,“h”]输出:[“h”,“a”,“n”,“n”

2020-09-16 09:20:55 182

原创 LeetCode 058 最后一个单词的长度 Java实现

LeetCode58题目给定一个仅包含大小写字母和空格 ’ ’ 的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。如果不存在最后一个单词,请返回 0 。说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。示例:输入: “Hello World”输出: 5代码class Solution { public int lengthOfLastWord(String s) { int temp = 0;

2020-09-16 09:15:09 72

原创 LeetCode 434 Java实现

LeetCode434题目统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符。请注意,你可以假定字符串里不包括任何不可打印的字符。示例:输入: “Hello, my name is John”输出: 5解释: 这里的单词是指连续的不是空格的字符,所以 “Hello,” 算作 1 个单词。通过次数22,399提交次数61,760代码class Solution { public int countSegments(String s) { String t

2020-09-16 08:09:16 152

原创 LeetCode 014 最长公共前缀 Java实现 详细注释

LeetCode14题目编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。通过次数358,955提交次数926,252代码class Solution { public String longestComm

2020-09-15 15:48:47 99

原创 LeetCode 125 验证回文串 Java实现 多种方法 详细注解

LeetCode125题目给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: “A man, a plan, a canal: Panama”输出: true示例 2:输入: “race a car”输出: false通过次数161,730提交次数349,061代码方法一 倒置字符串class Solution { public boolean isPalindrome(Stri

2020-09-15 10:56:59 138

原创 LeetCode 520 检测大写字母 Java实现

LeetCode520题目给定一个单词,你需要判断单词的大写使用是否正确。我们定义,在以下情况时,单词的大写用法是正确的:全部字母都是大写,比如"USA"。单词中所有字母都不是大写,比如"leetcode"。如果单词不只含有一个字母,只有首字母大写, 比如 “Google”。否则,我们定义这个单词没有正确使用大写字母。示例 1:输入: “USA”输出: True示例 2:输入: “FlaG”输出: False注意: 输入是由大写和小写拉丁字母组成的非空单词。通过次数25,93

2020-09-14 23:44:56 185

原创 LeetCode289 生命游戏 Java实现

LeetCode289题目根据 百度百科 ,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律:如果活细胞周围八个位置的活细胞数少于两个,则该位置活细胞死亡;如果活细胞周围八个位置有两个或三个活细胞,则该位置活细胞仍然存活;如果活

2020-09-14 18:16:37 458

原创 LeetCode073 矩阵置零 Java实现

LeetCode73题目给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。示例 1:输入:[[1,1,1],[1,0,1],[1,1,1]]输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2:输入:[[0,1,2,0],[3,4,5,2],[1,3,1,5]]输出:[[0,0,0,0],[0,4,5,0],[0,3,1,0]]进阶:一个直接的解决方案是使用 O(mn) 的额外空

2020-09-14 17:40:37 105

原创 LeetCode 048 旋转图像 Java实现

LeetCode48题目给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix =[[1,2,3],[4,5,6],[7,8,9]],原地旋转输入矩阵,使其变为:[[7,4,1],[8,5,2],[9,6,3]]示例 2:给定 matrix =[[ 5, 1, 9,11],[ 2, 4, 8,10],[13, 3,

2020-09-14 16:44:58 86

原创 LeetCode 566 重塑矩阵 Java实现

LeetCode566题目在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据。给出一个由二维数组表示的矩阵,以及两个正整数r和c,分别表示想要的重构的矩阵的行数和列数。重构后的矩阵需要将原始矩阵的所有元素以相同的行遍历顺序填充。如果具有给定参数的reshape操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。示例 1:输入:nums =[[1,2],[3,4]]r = 1, c = 4输出:[[1,2,

2020-09-13 23:13:51 100

原创 LeetCode 498 对角线遍历 Java实现

LeetCode 498题目给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示。示例:输入:[[ 1, 2, 3 ],[ 4, 5, 6 ],[ 7, 8, 9 ]]输出: [1,2,4,7,5,3,6,8,9]解释:说明:给定矩阵中的元素总数不会超过 100000 。代码class Solution { public int[] findDiagonalOrder(int[][] matr

2020-09-13 22:25:47 132

原创 LeetCode 059 螺旋矩阵II Java实现

LeetCode059题目给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。示例:输入: 3输出:[[ 1, 2, 3 ],[ 8, 9, 4 ],[ 7, 6, 5 ]]通过次数45,922提交次数58,820代码这道题和054其实挺像的,基本只要会054, 059就不在话下.思路也是和那道题一样,先往右,再往下,再往左,再往上的循环需要注意的是每次for语句判断的时候会额外的加上或减少一个1要么在每次循环后补回来,要么每次

2020-09-08 23:28:52 103

原创 LeetCode 054 螺旋矩阵 Java实现

LeetCode54题目给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例 1:输入:[[ 1, 2, 3 ],[ 4, 5, 6 ],[ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例 2:输入:[[1, 2, 3, 4],[5, 6, 7, 8],[9,10,11,12]]输出: [1,2,3,4,8,12,11,10,9,5,6,7]代码真不错真不错 , switch真不错!(

2020-09-08 08:37:57 113

原创 LeetCode 396 旋转函数 Java实现

LeetCode396题目给定一个长度为 n 的整数数组 A 。假设 Bk 是数组 A 顺时针旋转 k 个位置后的数组,我们定义 A 的“旋转函数” F 为:F(k) = 0 * Bk[0] + 1 * Bk[1] + … + (n-1) * Bk[n-1]。计算F(0), F(1), …, F(n-1)中的最大值。注意:可以认为 n 的值小于 105。示例:A = [4, 3, 2, 6]F(0) = (0 * 4) + (1 * 3) + (2 * 2) + (3 * 6) = 0

2020-09-07 16:55:47 109

原创 mybatis-config.xml报错 1 字节的 UTF-8 序列的字节 1 无效。

问题描述:java.lang.ExceptionInInitializerErrorat test.MybatisTest.getCustomerById(MybatisTest.java:16)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.refl

2020-09-07 14:03:15 383

原创 LeetCode 189 旋转数组 Java实现

题目给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]示例 2:输入: [-1,-100,3,99] 和 k = 2输出: [3,99,-1,-100]解释:向右旋转 1 步: [99,-1,-100,3]

2020-09-06 09:39:28 83

原创 LeetCode 419 Java实现

LeetCode419题目给定一个二维的甲板, 请计算其中有多少艘战舰。 战舰用 'X’表示,空位用 '.'表示。 你需要遵守以下规则:给你一个有效的甲板,仅由战舰或者空位组成。战舰只能水平或者垂直放置。换句话说,战舰只能由 1xN (1 行, N 列)组成,或者 Nx1 (N 行, 1 列)组成,其中N可以是任意大小。两艘战舰之间至少有一个水平或垂直的空位分隔 - 即没有相邻的战舰。示例 :X…X…X…X在上面的甲板中有2艘战舰。无效样例 :…XXXXX…X你不会收到这样的

2020-09-06 01:31:04 236 2

原创 LeetCode 598 Java实现

LeetCode598题目给定一个初始元素全部为 0,大小为 m*n 的矩阵 M 以及在 M 上的一系列更新操作。操作用二维数组表示,其中的每个操作用一个含有两个正整数 a 和 b 的数组表示,含义是将所有符合 0 <= i < a 以及 0 <= j < b 的元素 M[i][j] 的值都增加 1。在执行给定的一系列操作后,你需要返回矩阵中含有最大整数的元素个数。示例 1:输入:m = 3, n = 3operations = [[2,2],[3,3]]输出:

2020-09-06 01:09:21 161

原创 LeetCode 661 Java实现

LeetCode661题目包含整数的二维矩阵 M 表示一个图片的灰度。你需要设计一个平滑器来让每一个单元的灰度成为平均灰度 (向下舍入) ,平均灰度的计算是周围的8个单元和它本身的值求平均,如果周围的单元格不足八个,则尽可能多的利用它们。示例 1:输入:[[1,1,1],[1,0,1],[1,1,1]]输出:[[0, 0, 0],[0, 0, 0],[0, 0, 0]]解释:对于点 (0,0), (0,2), (2,0), (2,2): 平均(3/4) = 平均(0.75) = 0

2020-09-05 18:37:21 158

原创 LeetCode 119 Java实现

LeetCode119题目给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 3输出: [1,3,3,1]代码这道题和118差不多就是一模一样了…会做118 119不就是送分的吗(class Solution { public List<Integer> getRow(int rowIndex) { int nums[][] = new int[rowIndex+2][ro

2020-09-05 17:56:24 118

原创 LeetCode 118 Java实现

LeetCode118题目给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]代码错误的写法//这种方法其实是行不通的, 最后输出的结果为空.并不是算法出现了问题//而是listList中保存的使对象的引用, 在外部修改会导致对上的对象内容被修改//指我每次循环一次都会list2.clear//虽然

2020-09-05 17:47:10 212

原创 LeetCode 283 Java实现

LeetCode283其实能写到0ms达到非常快的速度…题目给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。代码class Solution { public void moveZeroes(int[] nums) { int temp = 0; for(int i

2020-09-05 01:37:03 157

SSM框架配置 底层配置万用模板(x)万恶之源(√)

SSM框架配置 底层配置万用模板(x)万恶之源(√) 自己手撸的SSM配置pwp方便自己也方便大家 如果有什么错误请联系我BedivereAlter@gmail.com

2020-07-31

空空如也

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

TA关注的人

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