11 2020 档案
摘要:题目链接:https://leetcode-cn.com/problems/reorganize-string/ 题意:给你一个字符串,问是否可以把字符串重新排列,使得任意相邻字母不同。 分析:不存在的情况就是出现次数最多的字母超过了ceil(len/2)。 排字母时要注意一个极限情况,就是字符串长
阅读全文
摘要:题目太脑瘫了,一两分钟就写完了,今天可以轻松下。 啊不对,今天机器学习第三周截止,滚去刷机器学习了
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/reverse-pairs/ 题意:给你一个数组,求满足i<j且nums[i]>2*num[j]的(i,j)对的数量 分析:本质上,就是对数组中的每一个元素,统计位于它左侧或右侧,且取值位于某个区间内的值的数量,和leetc
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/4sum-ii/ 题意:给你四个长度相同(最大为500)的无序数组,求问从每个数组中取出一个数,相加为和的方法一共有多少。 分析:我本来想的是CD数组的所有情况直接构成一个新数组e再排序,然后AB数组遍历得到的结果在e中二分
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/maximum-gap/submissions/ 题意:给一个无序的数组,让你求排完序后的数组,相邻两值的差值最大为多少,时间和空间复杂度要求线性(O(N))。 分析:主要是排序,像快排和归并排序都是O(nlogn)的,不满
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/increasing-decreasing-string/ 题意:给你一个包含26个字母的字符串让你构造一个新的字符串,规则是先提出最小的字符(这些字符间不能相同)放进新字符串,再从剩下的字符里提出最大的字符(也不能相同)放
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/count-complete-tree-nodes/ 题意:利用完全二叉树的性质,求完全二叉树的结点数。 分析:如果是单纯的二叉树,直接用dfs或者bfs。针对本题,首先我们得知道完全二叉树的性质是:除了最下面一层,中间每层
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/minimum-number-of-arrows-to-burst-balloons/ 题意:给多个区间,求最少需要多少点,可以使得每个区间内都包含至少一个点。 分析:按照右区间从小到大排序,每次都将点放在最小的右区间上。
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/valid-anagram/ 题意:判断两个字符串是否是字母都相同,只是顺序不同 分析:非常脑瘫,直接排序。。。 class Solution { public: bool isAnagram(string s, strin
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/sort-list/ 题意:要求以O(nlogn)的复杂度给一个链表排序 分析:昨天那道题的升级版,这里用的是归并排序的思想,自顶向下的排序,从一开始完整的链表不断的每次分成两段,分到每段只有一个结点为止,再一点点的合并,要
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/insertion-sort-list/ 题意:对一个链表进行选择排序 分析:直接就是O(n^2)的做法,从头到尾遍历 /** * Definition for singly-linked list. * struct Li
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/move-zeroes/submissions/ 题意:给你一个包含若干个0的数组,要求把所有的0移动到后面,且保持其他数相对顺序不变。 分析:第一个方法是遇到0就把后一位移过来,最后还剩多少位为空就在空的位置补0 第二个方
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/gas-station/ 题意:有n个加油站环形排列,每个加油站都可以获得数量为gas[i]的石油,但从该加油站出发抵达下一加油站需要消耗cost[i]的石油,问能否从一个加油站出发再回到该加油站,如果可以,输出序号最小的加
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/queue-reconstruction-by-height/ 题意:有打乱顺序的n个人排成一个队列,每个人有两个属性(h,k),分别是身高和排在他前面的人数,求排好顺序的队列。 分析:我们按照身高从高到低排列好队列(身高相
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/matrix-cells-in-distance-order/ 题意:给很多二维点,要求将这些二维点按照到一定点的距离远近进行排序。 分析:直接排序很简单,第一次写leetcode这种排序方式。 class Solution
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/remove-k-digits/ 题意:给一个用字符串表示的数字,你可以从中任意删减k个字符,使其字母序最小。 分析:字母序最小就得让前面的数字尽可能小,我最开始的想法是,对于第一个字符,从第二个开始向其后遍历k个字符,如果
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/relative-sort-array/ 又是一个简单题,懒得多说了,我用的暴力,有价值的地方就是题解用的这种自定义排序的方法, 之前没写过这样的自定义排序,码住。 class Solution { public: vect
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/odd-even-linked-list/ 题意:给一串列表,将奇数索引的结点全部移到偶数索引结点的前面,且不得改变奇偶结点间的顺序,要求时间复杂度O(N),空间复杂度O(1) 分析:从头到尾遍历,原先的head链表只存奇数
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/sort-array-by-parity-ii/ 题意:给你一个数组,保证一半奇数,一半偶数,将数组排成奇数下标放奇数,偶数下标放偶数。 分析:太简单了不提了,注意一点的就是判断A[i]%2为0的时候不能前面直接加!,要么括
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/freedom-trail/ 题意:给你一个密码字符串key,现在给你一个环形密码锁,环形密码锁按顺时针排列是字符串ring,现在需要求在环形密码锁上最少操作多少次可以解开密码,环形密码锁可顺时针或逆时针旋转,只有移动到12
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/next-permutation/ 题意:给定一个排列,求出比它大的下一个排列(按字母序,比如135就比126要大,因为第二位3比2大),如果已经是最大的就求最小的排列。 分析:比较好想的就是从最后一位开始按照扫描升序向前扫
阅读全文
摘要:题意:给出多个二维点,求离原点最近的k个点 直接根据距离排序即可,主要看下代码,leetcode这种写法很不熟。 class Solution { public: static bool cmp(const vector<int>& a,const vector<int>& b){ return a
阅读全文
摘要:#1:在数组中找两个数,使其和为target 链接:https://leetcode-cn.com/problems/two-sum/ 暴力就是n^2,可以用map来做,这里介绍一下map.count(tmp)函数,是搜索key的值,map里存在值为tmp的key就返回1,否则是0 #122:给定一
阅读全文
摘要:题目链接:https://leetcode-cn.com/problems/count-of-range-sum/ 题意:给一个整型的数组,求数组内有多少区间的区间和位于[lower,upper]中。 分析:用前缀和数组来处理,这样区间(i,j)和就可以简单理解为pres[j]-pres[i]。一个
阅读全文

浙公网安备 33010602011771号