![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
言念君子~
这个作者很懒,什么都没留下…
展开
-
274.H指数
给定一位研究者论文被引用次数的数组(被引用次数是非负整数)。编写一个方法,计算出研究者的 h 指数。h 指数的定义:h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她)的 (N 篇论文中)总共有 h 篇论文分别被引用了至少 h 次。(其余的 N - h 篇论文每篇被引用次数 不超过 h 次。)例如:某人的 h 指数是 20,这表示他已发表的论文中,每篇被引用了至少 20 次的论文总共有 20 篇。示例:输入:citations = [3,0,6,1,5]输出原创 2020-09-17 15:42:29 · 169 阅读 · 0 评论 -
442.数组中重复的数据
给定一个整数数组 a,其中1 ≤ a[i] ≤ n (n为数组长度), 其中有些元素出现两次而其他元素出现一次。找到所有出现两次的元素。你可以不用到任何额外空间并在O(n)时间复杂度内解决这个问题吗?示例:输入:[4,3,2,7,8,2,3,1]输出:[2,3]思路:1.排序(为什么可以不用排序?)2.遍历数组3.用索引法将该值减1得其索引,然后将该值变为负数4.当下一个数用上述算法执行后,若小于0则说明重复。代码如下:class Solution { public Li原创 2020-09-15 10:14:13 · 59 阅读 · 0 评论 -
645.错误的集合
集合 S 包含从1到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个元素复制了成了集合里面的另外一个元素的值,导致集合丢失了一个整数并且有一个元素重复。给定一个数组 nums 代表了集合 S 发生错误后的结果。你的任务是首先寻找到重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。示例 1:输入: nums = [1,2,2,4]输出: [2,3]注意:给定数组的长度范围是 [2, 10000]。给定的数组是无序的。思路:1.首先排序2.然后遍历数组,当nums[i]=nu原创 2020-09-15 01:20:55 · 92 阅读 · 0 评论 -
628.三个数的最大乘积(简单
628.三个数的最大乘积(简单)给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入: [1,2,3]输出: 6示例 2:输入: [1,2,3,4]输出: 24**思路:**这道题很重要的一个分类讨论就是,当数组中存在负数的时候。1.都是负数,那还是最大的三个数乘积2.两个负数一个正数,最小的两个负数和最大的正数乘积3.只有两个正数,那会剔除一个正数,变成情况24.三个正数,即最大三个正数乘积了代码如下:import java.lang.refle原创 2020-09-06 08:16:26 · 157 阅读 · 0 评论 -
495.提莫攻击(中等)
495.提莫攻击(中等)在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄,他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。现在,给出提莫对艾希的攻击时间序列和提莫攻击的中毒持续时间,你需要输出艾希的中毒状态总时长。你可以认为提莫在给定的时间点进行攻击,并立即使艾希处于中毒状态。示例1:输入: [1,4], 2输出: 4原因: 第 1 秒初,提莫开始对艾希进行攻击并使其立即中毒。中毒状态会维持 2 秒钟,直到第 2 秒末结束。第 4 秒初,提莫再次攻击艾希,使得艾希获得另外 2 秒原创 2020-09-06 07:55:43 · 101 阅读 · 0 评论