
leetcode刷题
刷题
天才小熊猫啊
路漫漫其修远兮,吾将上下而求索!!!
展开
-
java中的break,return,continue?
break是用来跳出循环的,但不跳出函数(只跳出一层),当某循环中出现break,例如for,while,do-while都可以跳出,但不跳出函数并且该循环终止,开始执行循环之后的代码。通常break语句总是与if语句联在一起,即满足条件时便跳出循环 return语句是将函数的值返回主调函数,后面的不管是循环里面还是循环外面的都不执行。但是它并不是用于专门跳出循环,而是结束一个方法,当在循环体中遇到Return,Return就会结束该方法,则循环随之也就结束。 continue语句的作用是跳过循环本中剩原创 2021-08-09 10:05:00 · 319 阅读 · 0 评论 -
将int类型转换为string类型
int a = sc.nextInt();String s = String.valueOf(a);String.valueOf();原创 2021-08-02 15:24:28 · 545 阅读 · 0 评论 -
字符串
344.反转字符串https://leetcode-cn.com/problems/reverse-string/541. 反转字符串IIhttps://leetcode-cn.com/problems/reverse-string-ii/剑指Offer 05.替换空格https://leetcode-cn.com/problems/ti-huan-kong-ge-lcof/151.翻转字符串里的单词https://leetcode-cn.com/problems/reverse原创 2021-07-08 17:40:56 · 146 阅读 · 0 评论 -
int mid = (left + right) / 2与int mid = left + ((right - left) / 2);
取数组中间元素的位置,不难写出 int mid = (left + right) / 2; 这么写其实有⼀个问题,就是数值 越界,例如left和right都是最⼤int,这么操作就越界了,在⼆分法中尤其需要注意! 所以可以这么写: int mid = left + ((right - left) / 2);...原创 2021-06-07 15:57:16 · 2190 阅读 · 2 评论 -
list.clear()
一 . list.clear()底层源码实现在使用list 结合的时候习惯了 list=null ;在创建这样的方式,但是发现使用list的clear 方法很不错,尤其是有大量循环的时候1、list 接口 的ArrayList 类的clear() 方法源码如下:/***Removesalloftheelementsfromthislist.Thelistwill*beemptyafterthiscallreturns....原创 2021-06-07 10:27:50 · 3032 阅读 · 0 评论 -
java中定义最大最小值
Integer.MIN_VALUE;Integer.MAX_VALUE;原创 2021-05-27 21:48:57 · 673 阅读 · 0 评论 -
队列的offer,poll,addAll方法
队列的offer,poll,addAll方法:定义队列:Queue<Node>queue=newLinkedList<>();添加值进队列:queue.offer(root);弹出值:Nodenode=queue.poll();将孩子节点的所有值都添加:queue.addAll(node.children);...原创 2021-05-27 21:22:58 · 1630 阅读 · 0 评论 -
java中对一个list中的元素 逆序输出
Collections.reverse(ans);原创 2021-05-27 09:45:50 · 572 阅读 · 0 评论 -
Deque,ArrayDeque,LinkedList做队列和栈
Deque用法及原理讲解Deque用的比较少,但是还是一个功能十分强大的队列,这种双向队列即可以支持先进后出,也能支持先进先出的格式,相当于同时实现了Stack和Vector,从上图看出,Queue以及Deque都是继承于Collection,Deque是Queue的子接口。从Deque的解释中,我们可以得知:Deque是double ended queue,我将其理解成双端结束的队列,双端队列,可以在首尾插入或删除元素。而Queue的解释中,Queue就是简单的FIFO队列。所以在概念上来原创 2021-05-17 10:56:09 · 929 阅读 · 1 评论 -
Java compareTo() 方法
Java compareTo() 方法Java Number类compareTo() 方法用于将 Number 对象与方法的参数进行比较。可用于比较 Byte, Long, Integer等。该方法用于两个相同数据类型的比较,两个不同类型的数据不能用此方法来比较。语法public int compareTo( NumberSubClass referenceName )参数referenceName-- 可以是一个 Byte, Double, Integer, Floa..原创 2021-04-05 20:33:47 · 212 阅读 · 0 评论 -
HashSet可以通过Arrays.asList这种方式添加元素!
privatefinalstaticHashSet<Character>vowels=newHashSet<>(Arrays.asList('a','e','i','o','u','A','E','I','O','U'));原创 2021-04-05 17:26:52 · 871 阅读 · 0 评论 -
两层for循环的双指针问题 导致的超时
可以将for循环变化成为 while循环eg: 给定一个非负整数c,你要判断是否存在两个整数a和b,使得a2+ b2= c。 力扣:633 平方数之和class Solution { public boolean judgeSquareSum(int c) { // //会超时 // long temp = (long)Math.sqrt(c); // for(int i = 0;i<=temp;i++){ ...原创 2021-04-01 20:34:22 · 822 阅读 · 0 评论 -
0是整数!
0是整数!原创 2021-04-01 19:56:30 · 131 阅读 · 0 评论 -
Arrays.toString()可以直接打印数组
Arrays.toString()可以直接打印数组原创 2021-03-31 15:29:33 · 458 阅读 · 0 评论 -
while (n-- > 0)
写java算法的时候碰到了while (n-- > 0) 这个东东,它的意思是循环n次,除了最常用的for (int i = 0; i < n; ++i) {...}之外,还可以写while (n-- > 0) {...} 和 while (--n >= 0) {...}。注意和lambda表达式没鸡毛关系!...原创 2021-03-24 21:31:24 · 501 阅读 · 0 评论 -
1/2=0;1%2=1
1/2=0;1%2=1原创 2021-03-22 11:19:28 · 1022 阅读 · 4 评论 -
Integer.MAX_VALUE
intmin=Integer.MAX_VALUE;设置最大值原创 2021-03-17 21:39:39 · 1010 阅读 · 0 评论 -
关于异或
A异或0等于A A异或1等于A非 相同值为0,不同值为1原创 2021-03-16 17:12:34 · 1824 阅读 · 0 评论 -
map.entrySet遍历key和value
System.out.println("通过Map.entrySet遍历key和value");for(Map.Entry<String,String>entry:map.entrySet()){System.out.println("key="+entry.getKey()+"andvalue="+entry.getValue());}...原创 2021-03-16 10:25:12 · 275 阅读 · 0 评论 -
java中char类型可以做自增运算
package com.ggqq;public class day312 { public static void main(String[] args){ char temp = 'a'; System.out.println(++temp);//b }}原创 2021-03-12 10:28:13 · 1122 阅读 · 0 评论 -
判断数字的奇偶性:x&1 , x%2
x&1位运算 等价于x%2取余运算,即皆可用于判断数字奇偶性原创 2021-03-04 16:07:41 · 1130 阅读 · 1 评论 -
map.put(num, map.getOrDefault(num, 0) + 1);用来统计数字出现的次数:
Map.getOrDefault(Object key, V defaultValue);如果在Map中存在key,则返回key所对应的的value。如果在Map中不存在key,则返回默认值。例如:map.put(num, map.getOrDefault(num, 0) + 1);表示:value默认从1开始,每次操作后num对应的value值加1可以用来统计数字出现的次数...原创 2021-03-04 09:27:43 · 3735 阅读 · 2 评论 -
String的contains方法
String的contains方法String类型有一个方法:contains(),该方法是判断字符串中是否有子字符串。如果有则返回true,如果没有则返回falsehttps://leetcode-cn.com/problems/jewels-and-stones/submissions/使用到原创 2021-03-02 21:06:40 · 1691 阅读 · 0 评论 -
map.getOrDefault()方法
Map.getOrDefault(Object key, V defaultValue);如果在Map中存在key,则返回key所对应的的value。如果在Map中不存在key,则返回默认值。例如:map.put(num, map.getOrDefault(num, 0) + 1);表示:value默认从1开始,每次操作后num对应的value值加1可以用来统计数字出现的次数!实例:剑指 Offer 56 - II. 数组中数字出现的次数 II在一个数组nums中除一个数字..原创 2021-01-14 13:10:35 · 484 阅读 · 0 评论 -
关于.length加不加括号的问题
当查询数组是,不加int[] a ;int len = a.length;当查询字符串时,要加String b ;int len = b.length();原创 2021-01-13 22:22:14 · 1245 阅读 · 0 评论 -
trim()和strip()函数
Java在JDK11中的String类中引入strip方法,trim()和strip()功能类似,主要区别是:trim()可以去除字符串前后的半角空白字符 strip()可以去除字符串前后的全角和半角空白字符半角和全角半角是我们多数人在打字的时候使用的状态,如果我们不去刻意调整半全角,它会一直伴随着我们,因为半角状态下,人们已经习惯了这种打字模式,半角状态下可以使用任何标点符号,而且对于空格也没有特殊限制。 全角占两个字节,半角占一个字节。半角全角主要是针对标点符号来说的,全角标点占两个字节,原创 2021-01-13 22:05:10 · 1481 阅读 · 0 评论 -
二维数组的行和列
//定义一个整型数组:3行4列int a[][] = new int[3][4];//获取行数---3行,将每一行的一维数组看作元素int lenY = a.length;//获取列数---4列,将二维数组的第一行的列数统计出来int lenX = a[0].length;a.length表示行 a[0].length表示列...原创 2021-01-13 20:51:13 · 8552 阅读 · 0 评论 -
Scanner 用户交互Systerm.in
Scanner 用户交互Systerm.inpackage com.ggqq;import java.util.Scanner;public class TestScanner { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入:"); if(scanner.hasNext.原创 2021-01-04 21:36:00 · 98 阅读 · 0 评论 -
java中的toCharArray()函数
字符串要进行比较,先要用toCharArray()函数转化为字符数组。原创 2020-12-18 17:37:58 · 1487 阅读 · 2 评论 -
java中的charAt(i)函数
java中的charAt(i)函数: charAt(i) 函数 是获取字符串中i位置的字符 str.charAt(i)的意思是第i个字符在字符串str中所占的位置,输出的是数字 for (var i = 0; i < str.length; i++) { if(!json[str.charAt(i)]){ // 首先得到i位置的字符char 再判断 json[char]是否存在 如果不存在就赋值为1原创 2020-12-18 16:56:40 · 11198 阅读 · 6 评论 -
substring()方法
s.substring(l+1,r+1)获取子串是[i + 1, j + 1)区间,左闭合右开的,也就是[i + 1, j]原创 2021-01-15 17:55:45 · 1784 阅读 · 1 评论