算法
ah啊哈
这个作者很懒,什么都没留下…
展开
-
双周赛5212. 向下取整数对和
向下取整数对和给你一个整数数组 nums ,请你返回所有下标对 0 <= i, j < nums.length 的 floor(nums[i] / nums[j]) 结果之和。由于答案可能会很大,请你返回答案对109 + 7 取余 的结果。函数 floor() 返回输入数字的整数部分。示例 1:输入:nums = [2,5,9]输出:10解释:floor(2 / 5) = floor(2 / 9) = floor(5 / 9) = 0floor(2 / 2) = floor(.原创 2021-05-16 10:27:57 · 256 阅读 · 0 评论 -
组合总和 Ⅳ
组合总和 Ⅳ给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。题目数据保证答案符合 32 位整数范围。示例 1:输入:nums = [1,2,3], target = 4输出:7解释:所有可能的组合为:(1, 1, 1, 1)(1, 1, 2)(1, 2, 1)(1, 3)(2, 1, 1)(2, 2)(3, 1)请注意,顺序不同的序列被视作不同的组合。示例 2:输入:nu.原创 2021-04-24 15:30:12 · 130 阅读 · 0 评论 -
使用linkedhashmap来实现LRU算法
使用linkedhashmap来实现LRU算法import java.util.ArrayList;import java.util.*;public class Solution { /** * lru design * @param operators int整型二维数组 the ops * @param k int整型 the k * @return int整型一维数组 */ public int[] LRU (int[]原创 2021-04-23 17:58:01 · 181 阅读 · 0 评论 -
查询无效交易
查询无效交易如果出现下述两种情况,交易 可能无效:交易金额超过 ¥1000或者,它和另一个城市中同名的另一笔交易相隔不超过 60 分钟(包含 60 分钟整)每个交易字符串 transactions[i] 由一些用逗号分隔的值组成,这些值分别表示交易的名称,时间(以分钟计),金额以及城市。给你一份交易清单 transactions,返回可能无效的交易列表。你可以按任何顺序返回答案。示例 1:输入:transactions = [“alice,20,800,mtv”,“alice,50,100.原创 2021-04-23 09:00:47 · 184 阅读 · 0 评论 -
leetcode213
打家劫舍 II你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。这个地方所有的房屋都 围成一圈 ,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警 。给定一个代表每个房屋存放金额的非负整数数组,计算你 在不触动警报装置的情况下 ,能够偷窃到的最高金额。示例 1:输入:nums = [2,3,2]输出:3解释:你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2),.原创 2021-04-15 19:07:15 · 101 阅读 · 0 评论 -
最长回文子串
给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”示例 3:输入:s = “a”输出:“a”示例 4:输入:s = “ac”输出:“a”提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成动态规划思路与算法对于一个子串而言,如果它是回文串,并且长度大于 2,那么将它首尾的两个字母原创 2021-04-05 15:08:59 · 112 阅读 · 0 评论 -
leetcode每日一题224
基本计算器实现一个基本的计算器来计算一个简单的字符串表达式 s 的值。示例 1:输入:s = “1 + 1”输出:2示例 2:输入:s = " 2-1 + 2 "输出:3示例 3:输入:s = “(1+(4+5+2)-3)+(6+8)”输出:23提示:1 <= s.length <= 3 * 105s 由数字、’+’、’-’、’(’、’)’、和 ’ ’ 组成s 表示一个有效的表达式class Solution { public int calculate.原创 2021-03-10 22:34:40 · 106 阅读 · 0 评论 -
leetcode每日一题1047
删除字符串中的所有相邻重复项给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在 S 上反复执行重复项删除操作,直到无法继续删除。在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。示例:输入:“abbaca”输出:“ca”解释:例如,在 “abbaca” 中,我们可以删除 “bb” 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 “aaca”,其中又只有 “aa” 可以执行重复项删除操作,所以最后的字符串为 “c.原创 2021-03-09 20:54:05 · 294 阅读 · 0 评论 -
JAVA使用hasNext循环输入
hasNex循环输入的简单用法import java.util.Random;import java.util.Scanner;public class Aaa {public static void main(String[] args){ Scanner scan = new Scanner(System.in); int a=0,b=0; while(scan.hasNext(...原创 2019-05-23 17:05:55 · 2347 阅读 · 0 评论 -
JAVA使用hasNext循环输入
hasNex循环输入的简单用法import java.util.Random;import java.util.Scanner;public class Aaa {public static void main(String[] args){ Scanner scan = new Scanner(System.in); int a=0,b=0; while(scan.hasNext(...原创 2019-05-23 17:05:44 · 1260 阅读 · 0 评论 -
数组元素循环右移问题
一个数组A中存有N个整数,在不允许使用另外数组的前提下,将每个数组循环右移M个位置,即将A中的数据(A0,A1,A2,A3,A4…An-1)变换为(An-m,…,An-1,A0,A1,A2,A3…An-m-1)(最后M个数移到最前面的M个位置)。需要考虑程序移动数据的次数尽量少,则应如何设计移动的方法。只使用一个数组解决#include <stdio.h>#include <...原创 2019-05-06 22:21:00 · 746 阅读 · 0 评论 -
JAVA 数字颠倒
把数字倒序过来例如123倒序变成321public static int daoxu(int n){int num=0;int sum=0;int count=0;int m=0;int t=0;int k=1;while(k>0){k=(int)(n-Math.pow(10, count));//判断位数直到k<0count++;}m=count-1;t=...原创 2019-04-22 22:22:44 · 2009 阅读 · 0 评论 -
算法萌新学算法第一天
学习算法第一天欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markd...原创 2019-04-20 21:48:38 · 170 阅读 · 0 评论