20200504:力扣187周赛下
力扣187周赛下
- 题目
- 思路与算法
- 代码实现
题目
3.绝对差不超过限制的最长连续子数组
- 有序矩阵中的第 k 个最小数组和
思路与算法
- 第三题,本题没什么特殊的东西,滑动窗口即可,注意书写即可。
- 第四题,由于给的数据比较小,k<=200,因此我们尝试一行一行的更新res的值,res中存放当前几行数据两两枚举后的和的排序之后的值,over。
代码实现
3.绝对差不超过限制的最长连续子数组
class Solution {public int longestSubarray(int[] nums, int limit) {// 窗口左端lint l = 0;int res = 0;if (nums.length == 1) {return 1;}// i为右边界,j从有边界-1开始向左遍历,处理for (int i = 1; i < nums.length; i++) {for (int j = i - 1;j >= l; j--) {// 如果这俩值相等,则不需要处理,直接扩大窗口if (nums[i] == nums[j]) {break;}// 否则需要更新l的值if (Math.abs(nums[i] - nums[j]) > limit) {l = j + 1;break;}}res = Math.max(res,i - l + 1);}return res;}
- 有序矩阵中的第 k 个最小数组和
class Solution {public int kthSmallest(int[][] mat, int k) {// 获取行列int m = mat.length;int n = mat[0].length;// 新建长度为k的listList<Integer> res = new ArrayList<>(k);// 把第一行的数添加到res先for (int i = 0; i < n; i++) {res.add(mat[0][i]);}/* 每次加入一行,将这一行和初始res中的第一行的值进行逐个相加求和再排序,直到最后一行加入的 时候,我们只需要排序拿到第k个值即可。*/for (int i = 1; i < m; i++) {List<Integer> newList = new ArrayList<>();for (int oldList : res) {for (int num : mat[i]) {newList.add(oldList + num);}}Collections.sort(newList);// 记得清空res每次res.clear();int len = Math.min(k,newList.size());for (int j = 0;j < len;j++) {res.add(newList.get(j));}}return res.get(k-1);}
}
20200504:力扣187周赛下相关推荐
- 20200507:力扣151周赛下
力扣151周赛下 题目 思路与算法 代码实现 题目 1. 从链表中删去总和值为零的连续节点 思路与算法 只做第三题了,第四题太耗费时间了,第三题对存在的链表进行一个判断就会发现,我们只需要去掉其中相加 ...
- 20200503:力扣187周周赛上
力扣187周周赛上 题目 思路与算法 代码实现 复杂度分析 题目 旅行终点站 是否所有 1 都至少相隔 k 个元素 思路与算法 第一题我没做出来,说来惭愧,菜的离谱.看大神的题解豁然开朗,这题类似之前 ...
- C#实现力扣双周赛算法题:以组为单位订音乐会的门票订购
目录: 前言: 一,算法题目描述 二,基本概念理解: 三,例子引入分析 四,代码解释 (1)安排座位函数 (2)查询函数 (2)求出1到RPS内的最小下标 (3)gather函数 (4)scatter ...
- 20200501:力扣185周赛上
力扣185周赛上 题目 思路与算法 代码实现 题目 重新格式化字符串 点菜展示表 思路与算法 第一题,重新格式化字符串,没什么难度,直接遍历分类字符和数字,记得统计出数目,数目多1的那一类必须先拼接, ...
- 第一次LeetCode周赛心得(力扣-cn周赛,使用python3)
第一次力扣参赛:第 174 场力扣周赛 第 174 场力扣周赛赛题: https://leetcode-cn.com/circle/discuss/lEfEkb/view/OrAJAh/ 第 174 ...
- 数组的合并和升序排列_每日“力扣”系列10 下一个排列
今天继续力扣数组标签的算法题,力扣第31题,难度等级为中等,题目描述如下: 题目要点概括如下: 1.输入部分为一个有顺序的数组,按照数字的前后顺序,这个数字代表着一个位数不定的数字,这里程它为原数字. ...
- 力扣 187. 重复的DNA序列
1.题目 DNA序列 由一系列核苷酸组成,缩写为 'A', 'C', 'G' 和 'T'.. 例如,"ACGAATTCCG" 是一个 DNA序列 . 在研究 DNA 时,识别 DN ...
- Leetcode周赛复盘——第 71 场力扣双周赛与第 279 场力扣周赛
双周赛: 5984. 拆分数位后四位数字的最小和 class Solution:def minimumSum(self, num: int) -> int:a, b, c, d = sorted ...
- LeetCode 第 69 场力扣双周赛
5960. 将标题首字母大写 添加链接描述 给你一个字符串 title ,它由单个空格连接一个或多个单词组成,每个单词都只包含英文字母.请你按以下规则将每个单词的首字母 大写 : 如果单词的长度为 1 ...
最新文章
- 如何设计一门语言(三)——什么是坑(面向对象和异常处理)
- tomcat源码分析_百战卓越108天tomcat和servlet源码分析
- MySQL5.7绿色版安装
- Solr 中 Schema 结构说明
- Office365—Exchange管理4—通讯组和安全组
- 求解线性方程组(SVD,QR,Gauss,LU)
- Apache Hadoop 源码阅读(陆续更新)
- 性能调试工具——oprofile
- 怎么把java程序打包?java源代码打包方法
- 胶囊网络之 Found a Reason for me? Weakly-supervised Grounded Visual Question Answering using Capsules论文笔记
- 树莓派安装Ubuntu server无屏幕开机自动连接WIFI
- 定时任务ScheduledExecutorService
- 元宇宙下的商人、小说家和“钢铁侠”
- 塔尔斯基关于实数的8条公理(原文)
- 跨平台长连接组件设计及可插拔改造
- python音乐可视化效果_Python 一个漂亮的音乐节奏可视化方案!我觉得可行
- 人工智能打造充满创造力的新世界,华为云开发者日无锡站成功举办
- 打码平台是如何运作的?再谈验证码安全
- python的web自动化框架实例_Selenium基于Python web自动化测试框架 -- PO
- URPF学习笔记(手写版)