![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
总结在做题或学习过程中遇到的算法。
M_Chico
这个作者很懒,什么都没留下…
展开
-
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 · 135 阅读 · 0 评论 -
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 · 88 阅读 · 0 评论 -
qc 字符串与数组的切片.Java
目录字符串切片(substring方法)例题:题解:数组切片(Arrays.copyOfRange()方法)例题题解字符串切片(substring方法)例题:字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。题解:class Solution { public String reverseLeftWords(String s, i原创 2020-12-21 21:51:23 · 114 阅读 · 0 评论 -
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 · 231 阅读 · 0 评论 -
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 · 131 阅读 · 1 评论 -
qc贪心算法.Java
目录介绍:介绍:贪心算法(英语:greedy algorithm),又称贪婪算法,是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。[1]比如在旅行推销员问题中,如果旅行员每次都选择最近的城市,那这就是一种贪心算法。贪心算法在有最优子结构的问题中尤为有效。最优子结构的意思是局部最优解能决定全局最优解。简单地说,问题能够分解成子问题来解决,子问题的最优解能递推到最终问题的最优解。贪心算法与动态规划的不同在于它对每个子问题的解决方案都做出选择,不原创 2020-12-07 23:32:55 · 169 阅读 · 0 评论 -
题目收藏
文章目录一、力扣二、洛谷一、力扣1.1030. 距离顺序排列矩阵单元格(数组排序sort、桶排序、BFS)二、洛谷原创 2020-11-21 13:35:44 · 68 阅读 · 0 评论