04 2020 档案

摘要:1095. 山脉数组中查找目标值 (这是一个 交互式问题 ) 给你一个 山脉数组 mountainArr,请你返回能够使得 mountainArr.get(index) 等于 target 最小 的下标 index 值。 如果不存在这样的下标 index,就请返回 -1。 何为山脉数组?如果数组 A 阅读全文
posted @ 2020-04-29 13:31 鳄鱼四驱车 阅读(161) 评论(0) 推荐(0)
摘要:406. 根据身高重建队列 假设有打乱顺序的一群人站成一个队列。 每个人由一个整数对(h, k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。 编写一个算法来重建这个队列。 注意: 总人数少于1100人。 示例 输入: [[7,0], [4,4], [7,1], [5,0] 阅读全文
posted @ 2020-04-28 13:29 鳄鱼四驱车 阅读(184) 评论(0) 推荐(0)
摘要:547. 朋友圈 班上有 N 名学生。其中有些人是朋友,有些则不是。他们的友谊具有是传递性。如果已知 A 是 B 的朋友,B 是 C 的朋友,那么我们可以认为 A 也是 C 的朋友。所谓的朋友圈,是指所有朋友的集合。 给定一个 N * N 的矩阵 M,表示班级中学生之间的朋友关系。如果M[i][j] 阅读全文
posted @ 2020-04-27 22:22 鳄鱼四驱车 阅读(165) 评论(0) 推荐(0)
摘要:436. 寻找右区间 class Solution { public: int binsearch(vector<vector<int>>& arr, int k){ int l=0,r=arr.size()-1; if(k>arr[r][0])return -1; while(l<r){ int 阅读全文
posted @ 2020-04-27 15:32 鳄鱼四驱车 阅读(139) 评论(0) 推荐(0)
摘要:第一题,很简单,其实就是求不同元素的个数 某互联网公司一年一度的春招开始了,一共有 n 名面试者入选。每名面试者都会提交一份简历,公司会根据提供的简历资料产生一个预估的能力值,数值越大代表越有可能通过面试。 小 A 和小 B 负责审核面试者,他们均有所有面试者的简历,并且将各自根据面试者能力值从大到 阅读全文
posted @ 2020-04-25 23:15 鳄鱼四驱车 阅读(315) 评论(0) 推荐(0)
摘要:221. 最大正方形 在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积。 示例: 输入: 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 输出: 4 class Solution { public: int maximalSquare 阅读全文
posted @ 2020-04-25 10:52 鳄鱼四驱车 阅读(316) 评论(0) 推荐(0)
摘要:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 很容易想到从后往前折半插入排序时顺便记录比当前数小得数,但是这种方法在用例30的时候就超时了。。 class Solution { public: int count(vec 阅读全文
posted @ 2020-04-24 22:08 鳄鱼四驱车 阅读(146) 评论(0) 推荐(0)
摘要:394. 字符串解码 给定一个经过编码的字符串,返回它解码后的字符串。 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。 你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合 阅读全文
posted @ 2020-04-24 13:07 鳄鱼四驱车 阅读(269) 评论(0) 推荐(0)
摘要:877. 石子游戏 亚历克斯和李用几堆石子在做游戏。偶数堆石子排成一行,每堆都有正整数颗石子 piles[i] 。 游戏以谁手中的石子最多来决出胜负。石子的总数是奇数,所以没有平局。 亚历克斯和李轮流进行,亚历克斯先开始。 每回合,玩家从行的开始或结束处取走整堆石头。 这种情况一直持续到没有更多的石 阅读全文
posted @ 2020-04-24 13:03 鳄鱼四驱车 阅读(101) 评论(0) 推荐(0)
摘要:421. 数组中两个数的最大异或值 给定一个非空数组,数组中元素为 a0, a1, a2, … , an-1,其中 0 ≤ ai < 2^31 。 找到 ai 和aj 最大的异或 (XOR) 运算结果,其中0 ≤ i, j < n 。 你能在O(n)的时间解决这个问题吗? class Solutio 阅读全文
posted @ 2020-04-23 10:36 鳄鱼四驱车 阅读(186) 评论(0) 推荐(0)
摘要:474. 一和零(两种容量的0-1背包问题) 在计算机界中,我们总是追求用有限的资源获取最大的收益。 现在,假设你分别支配着 m 个 0 和 n 个 1。另外,还有一个仅包含 0 和 1 字符串的数组。 你的任务是使用给定的 m 个 0 和 n 个 1 ,找到能拼出存在于数组中的字符串的最大数量。每 阅读全文
posted @ 2020-04-21 21:19 鳄鱼四驱车 阅读(159) 评论(0) 推荐(0)
摘要:424. 替换后的最长重复字符 给你一个仅由大写英文字母组成的字符串,你可以将任意位置上的字符替换成另外的字符,总共可最多替换 k 次。在执行上述操作后,找到包含重复字母的最长子串的长度。 如果我们按序遍历每个字符开始计算符合条件的子串长度,对于每个子串,我们只需要以它的第一个字符为不变字符。思路简 阅读全文
posted @ 2020-04-20 18:10 鳄鱼四驱车 阅读(124) 评论(0) 推荐(0)
摘要:347. 前 K 个高频元素 priority_queue<Type, Container, Functional> // greater<>表示小根堆 vector<int> topKFrequent(vector<int>& nums, int k) { priority_queue<pair< 阅读全文
posted @ 2020-04-18 13:45 鳄鱼四驱车 阅读(104) 评论(0) 推荐(0)
摘要:416. 分割等和子集 给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。 注意: 每个数组中的元素不会超过 100 数组的大小不会超过 200 示例 1: 输入: [1, 5, 11, 5] 输出: true 解释: 数组可以分割成 [1, 5, 5] 和 阅读全文
posted @ 2020-04-18 10:43 鳄鱼四驱车 阅读(239) 评论(0) 推荐(0)
摘要:315. 计算右侧小于当前元素的个数 给定一个整数数组 nums,按要求返回一个新数组 counts。数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。 示例: 输入: [5,2,6,1] 输出: [2,1,1,0] 解释: 5 的右 阅读全文
posted @ 2020-04-17 16:50 鳄鱼四驱车 阅读(152) 评论(1) 推荐(0)
摘要:55. 跳跃游戏 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 1: 输入: [2,3,1,1,4] 输出: true 解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 阅读全文
posted @ 2020-04-17 09:56 鳄鱼四驱车 阅读(115) 评论(0) 推荐(0)
摘要:72. 编辑距离 给你两个单词 word1 和 word2,请你计算出将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作: 插入一个字符 删除一个字符 替换一个字符 示例 1: 输入:word1 = "horse", word2 = "ros" 输出:3 解 阅读全文
posted @ 2020-04-16 11:46 鳄鱼四驱车 阅读(198) 评论(0) 推荐(0)
摘要:56. 合并区间 给出一个区间的集合,请合并所有重叠的区间。 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6]. 示例 2: 输入: [[1, 阅读全文
posted @ 2020-04-16 10:30 鳄鱼四驱车 阅读(162) 评论(0) 推荐(0)
摘要:LeetCode上的卖股票题大概有6道,建议大家去看一下英文版 LeetCode上关于这类题目的讲解:https://leetcode.com/problems/best-time-to-buy-and-sell-stock-with-transaction-fee/discuss/108870/M 阅读全文
posted @ 2020-04-15 23:17 鳄鱼四驱车 阅读(187) 评论(0) 推荐(0)
摘要:编写一个函数,不用临时变量,直接交换numbers = [a, b]中a与b的值。 示例: 输入: numbers = [1,2] 输出: [2,1] 提示: numbers.length == 2 这是一道看起来非常简单但是我觉得也非常启迪思维的题目 方法一:数学计算 //此方法要充分考虑到溢出的 阅读全文
posted @ 2020-04-15 13:06 鳄鱼四驱车 阅读(139) 评论(0) 推荐(0)
摘要:给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。 示例 1: 输入: 0 0 0 0 1 0 0 0 0 输出: 0 0 0 0 1 0 0 0 0 示例 2: 输入: 0 0 0 0 1 0 1 1 1 输出: 0 0 0 0 1 0 1 2 阅读全文
posted @ 2020-04-15 12:01 鳄鱼四驱车 阅读(145) 评论(0) 推荐(0)
摘要:445. 两数相加 II 给你两个 非空 链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储一位数字。将这两数相加会返回一个新的链表。 你可以假设除了数字 0 之外,这两个数字都不会以零开头。 进阶: 如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。 示 阅读全文
posted @ 2020-04-14 21:38 鳄鱼四驱车 阅读(162) 评论(0) 推荐(0)
摘要:给定一个整数 n,计算所有小于等于 n 的非负整数中数字 1 出现的个数。 示例: 输入: 13输出: 6 解释: 数字 1 出现在以下数字中: 1, 10, 11, 12, 13 。 来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/number 阅读全文
posted @ 2020-04-11 22:17 鳄鱼四驱车 阅读(406) 评论(0) 推荐(0)
摘要:166. 分数到小数 给定两个整数,分别表示分数的分子 numerator 和分母 denominator,以字符串形式返回小数。 如果小数部分为循环小数,则将循环的部分括在括号内。 示例 1: 输入: numerator = 1, denominator = 2 输出: "0.5" 示例 2: 输 阅读全文
posted @ 2020-04-10 14:43 鳄鱼四驱车 阅读(141) 评论(0) 推荐(0)
摘要:本题要求将给定的 N 个正整数按非递增的顺序,填入“螺旋矩阵”。所谓“螺旋矩阵”,是指从左上角第 1 个格子开始,按顺时针螺旋方向填充。要求矩阵的规模为 m 行 n列,满足条件:m×n 等于 N;m≥n;且 m−n 取所有可能值中的最小值。 输入格式: 输入在第 1 行中给出一个正整数 N,第 2 阅读全文
posted @ 2020-04-09 12:26 鳄鱼四驱车 阅读(158) 评论(0) 推荐(0)
摘要:1044 火星数字 (20分) 火星人是以 13 进制计数的: 地球人的 0 被火星人称为 tret。 地球人数字 1 到 12 的火星文分别为:jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, dec。 火星人将进位以后的 12 个高位数 阅读全文
posted @ 2020-04-08 22:50 鳄鱼四驱车 阅读(220) 评论(0) 推荐(0)
摘要:1040 有几个PAT (25分) 字符串 APPAPT 中包含了两个单词 PAT,其中第一个 PAT 是第 2 位(P),第 4 位(A),第 6 位(T);第二个 PAT 是第 3 位(P),第 4 位(A),第 6 位(T)。 现给定字符串,问一共可以形成多少个 PAT? 输入格式: 输入只有 阅读全文
posted @ 2020-04-08 20:51 鳄鱼四驱车 阅读(117) 评论(0) 推荐(0)
摘要:注意点,数据类型用long,判断分数小于0不要用a*b<0,要用(a>0&&b<0)||(a<0&&b>0),否则会溢出 #include<cstdio> #include<vector> #include<cstring> #include<iostream> using namespace st 阅读全文
posted @ 2020-04-08 14:23 鳄鱼四驱车 阅读(134) 评论(0) 推荐(0)
摘要:给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。 感谢 Marcos 贡献此图。 示例: 输入: [0,1, 阅读全文
posted @ 2020-04-04 22:29 鳄鱼四驱车 阅读(271) 评论(0) 推荐(0)
摘要:反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。 说明: 1 ≤ m ≤ n ≤ 链表长度。 示例: 输入: 1->2->3->4->5->NULL, m = 2, n = 4 输出: 1->4->3->2->5->NULL这题要求一趟扫描,我们不妨先来看一个经典问题:反转一整个链表 Lis 阅读全文
posted @ 2020-04-03 20:34 鳄鱼四驱车 阅读(194) 评论(0) 推荐(0)
摘要:四月每日一题打卡第三天 请你来实现一个 atoi 函数,使其能将字符串转换成整数。 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下: 如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字字符组合起来,形成一个有符号整数。 假如第 阅读全文
posted @ 2020-04-03 11:58 鳄鱼四驱车 阅读(172) 评论(0) 推荐(0)
摘要:给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 示例: 输入: 3 输出: 5 解释: 给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 2 / / \ \ 2 1 2 3 很容易知道:n=0时,kin 阅读全文
posted @ 2020-04-02 20:23 鳄鱼四驱车 阅读(180) 评论(0) 推荐(0)
摘要:四月打卡第一天 1111.有效括号的嵌套深度 来源:力扣(LeetCode) 这个题目理解题意的关键点是将字符串分成两个字序列(字符位置可以不相邻),而非字串(字符位置必须相邻)。也就是这题需要我们找到两个有效序列,使它们的嵌套深度相差最小,因为总的嵌套深度一定,若|depth(A)-depth(B 阅读全文
posted @ 2020-04-01 10:21 鳄鱼四驱车 阅读(471) 评论(0) 推荐(0)