- 博客(14)
- 收藏
- 关注
原创 qc 前缀和
前缀和一、代码模板二、例题(leetcode 303)三、题解(leetcode 303) 一、代码模板 { sum = new int[n + 1]; for (int i = 1; i <= n; i++) sum[i] = sum[i - 1] + nums[i - 1]; //nums为原数组,sum为前缀和数组 } // 计算 [i, j] 结果 { ans = sum[j] - sum[i - 1]; } //注意需要将sum的长度设置为n+
2021-03-01 15:24:54 139
转载 qc 交换两个变量的值.Java
1、借助中间量交换 (开发常用) int x = 10; int y = 20; int temp = x; x = y; y = temp; 此种方法可以将中间量看成空杯,即把temp看成是空杯, 把x看成是装有白酒的杯子,把y看成是装有红酒的杯子 int temp = x; 把白酒倒到空杯中,此时temp装有白酒,x变成空杯 x = y; 把y中的红酒倒到x空杯中,此时x装有红酒,y变成空杯 y = temp; 把白酒倒到y空杯中,此时x装有红酒,y装有白酒,实现x和y的互换 2、位移运算交换 (面试
2021-01-31 19:14:22 98
原创 qc 字符串与数组的切片.Java
目录字符串切片(substring方法)例题:题解:数组切片(Arrays.copyOfRange()方法)例题题解 字符串切片(substring方法) 例题: 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。 题解: class Solution { public String reverseLeftWords(String s, i
2020-12-21 21:51:23 213
原创 qc 字符串求余运算
文章目录例题题解 (求余运算) 例题 (力扣原题) 题解 (求余运算) class Solution { public String reverseLeftWords(String s, int n) { StringBuilder res = new StringBuilder(); for(int i = n; i < n + s.length(); i++) res.append(s.charAt(i % s.length(
2020-12-20 16:28:43 293
转载 qc String,StringBuffer与StringBuilder的区别
String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后,
2020-12-20 16:09:26 77
转载 qc状态压缩(位运算)
文章目录例题题解 例题 (力扣 1684. 统计一致字符串的数目) 题解 由于 allowed 字符都是不相同的,那么可以取一个 int 类型整数的后 26 位作为标记,比如如果 allowed = “ac” ,那么可以转为一个数:00…000101 (26位),最低位 1 表示 ‘a’ ,另一个 1 表示 ‘c’ ,这样就可以表示一个字符都不相同的字符串 allowed 了,它具有字符 (char)(0 + ‘a’) 以及 (char)(2 + ‘a’) ,将 allowed 对应的数称为 ans
2020-12-20 11:05:06 175 1
原创 qcIDEA错误: 找不到或无法加载主类;原因: java.lang.ClassNotFoundException
目录前言错误提示如图:解决办法: 前言 遇到这个问题还是半个小时前,我先是在谷歌上搜索解决办法;尝试了许多解决办法,比如这位博主的解决办法,尝试了之后还是不行,网上的许多解决办法也都不适合我,所以我觉得出现这种错误得原因有许多。 后来我在翻看我的文件是发现如图: 而其他的Java文件图标都是: 我就想到我建这个叫做calendar的文件的时候选的不是Java class选项,而是选择了file: 错误提示如图: 解决办法: 在报错的文件后面加上java文件后缀.java: 运行结果如图: 希
2020-12-08 21:06:00 831
原创 qc贪心算法.Java
目录介绍: 介绍: 贪心算法(英语:greedy algorithm),又称贪婪算法,是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。[1]比如在旅行推销员问题中,如果旅行员每次都选择最近的城市,那这就是一种贪心算法。 贪心算法在有最优子结构的问题中尤为有效。最优子结构的意思是局部最优解能决定全局最优解。简单地说,问题能够分解成子问题来解决,子问题的最优解能递推到最终问题的最优解。 贪心算法与动态规划的不同在于它对每个子问题的解决方案都做出选择,不
2020-12-07 23:32:55 214
原创 qc正则表达式的语法与使用.Java
目录正则表达式的语法正则表达式的使用 正则表达式的语法 在其他语言中,\\ 表示:我想要在正则表达式中插入一个普通的(字面上的)反斜杠,请不要给它任何特殊的意义。 在 Java 中,\\ 表示:我要插入一个正则表达式的反斜线,所以其后的字符具有特殊的意义。 所以,在其他的语言中(如Perl),一个反斜杠 \ 就足以具有转义的作用,而在 Java中正则表达式中则需要有两个反斜杠才能被解析为其他语言中的转义作用。也可以简单的理解在 Java 的正则表达式中,两个 \\ 代表其他语言中的一个 \,这也就是为什么
2020-12-07 15:15:21 452 4
原创 qc对String对象相等的判断.Java
凡是使用new运算符创建的字符串对象,尽管两者实体相同,但两者引用不同,所以两者之间用“==”判断相等时都返回false。 public class test1 { public static void main(String[] args) { String a1,a2,a3; a1="kea"; a2="kea"; a3="ke"; System.out.println("a1==a2:"+(a1==a2));
2020-12-06 11:14:36 97
原创 qc数组最大值与最小值.Java
文章目录一、Java8 Stream 计算数组最大值、最小值:最大值(整数数组):最小值(整数数组):二、Arrays.sort(nums)(nums可以是int[]、float[]、double[]或其他) 一、Java8 Stream 计算数组最大值、最小值: 最大值(整数数组): Arrays.stream(A).max().getAsInt() int[] A = {6,7,8,2,1,3,4,5}; int maxVal = Arrays.stream(A).max().getAsInt();
2020-11-26 22:52:36 310
原创 qc接口回调.Java
接口回调:把实现某一接口的类创建的对象的引用赋值给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口方法 Com com; // Com是一个接口,com是一个空接口 ImpleCom ICom = new ImpleCom; // ImpleCom是实现Com接口的类 com = ICom; ...
2020-11-24 20:47:11 153
原创 qc快速排序.Java
快速排序代码: static void quicksort(int n[], int left, int right) { int dp; if (left < right) { dp = partition(n, left, right); quicksort(n, left, dp - 1); quicksort(n, dp + 1, right); } } .
2020-11-24 16:52:06 108
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人