算法
leetcode题目
欧吉吉
这个作者很懒,什么都没留下…
展开
-
面试题 01.06. 字符串压缩
classSolution{publicStringcompressString(StringS){inti=0;intn=S.length();StringBuilderresult=newStringBuilder();while(i<n){intj=i;while(j<n&&S.ch...原创 2020-10-25 11:31:09 · 137 阅读 · 0 评论 -
1356. 根据数字二进制下 1 的数目排序
classSolution{publicint[]sortByBits(int[]arr){int[]map=newint[arr.length];for(inti=0;i<arr.length;i++){map[i]=Integer.bitCount(arr[i])*10000000+arr[i];}Arrays.sort(map)...原创 2020-10-25 11:11:42 · 177 阅读 · 0 评论 -
1403. 非递增顺序的最小子序列
classSolution{publicList<Integer>minSubsequence(int[]nums){Arrays.sort(nums);intsum=Arrays.stream(nums).sum();List<Integer>list=newArrayList<>();intscur=0;for(inti=...原创 2020-10-25 10:56:49 · 140 阅读 · 0 评论 -
1502. 判断能否形成等差数列
classSolution{publicbooleancanMakeArithmeticProgression(int[]arr){Arrays.sort(arr);inttemp=arr[1]-arr[0];booleanresult=true;for(inti=1;i<arr.length;i++){if(temp!=arr[i]-arr[i-1])...原创 2020-10-23 22:40:55 · 154 阅读 · 0 评论 -
1491. 去掉最低工资和最高工资后的工资平均值
classSolution{publicdoubleaverage(int[]salary){doublesum=0;intmin=salary[0];intmax=salary[0];for(inti=0;i<salary.length;i++){sum+=salary[i];if(salary[i]<min...原创 2020-10-23 22:34:01 · 153 阅读 · 0 评论 -
1030. 距离顺序排列矩阵单元格
给出 R 行 C 列的矩阵,其中的单元格的整数坐标为 (r, c),满足 0 <= r < R 且 0 <= c < C。另外,我们在该矩阵中给出了一个坐标为(r0, c0) 的单元格。返回矩阵中的所有单元格的坐标,并按到 (r0, c0) 的距离从最小到最大的顺序排,其中,两单元格(r1, c1) 和 (r2, c2) 之间的距离是曼哈顿距离,|r1 - r2| + |c1 - c2|。(你可以按任何满足此条件的顺序返回答案。)示例 1:输入:R = 1, ..原创 2020-06-17 22:30:18 · 135 阅读 · 0 评论 -
1370. 上升下降字符串
给你一个字符串s,请你根据下面的算法重新构造字符串:从 s中选出 最小的字符,将它 接在结果字符串的后面。从 s剩余字符中选出最小的字符,且该字符比上一个添加的字符大,将它 接在结果字符串后面。重复步骤 2 ,直到你没法从 s中选择字符。从 s中选出 最大的字符,将它 接在结果字符串的后面。从 s剩余字符中选出最大的字符,且该字符比上一个添加的字符小,将它 接在结果字符串后面。重复步骤 5,直到你没法从 s中选择字符。重复步骤 1 到 6 ,直到 s中...原创 2020-06-17 22:27:23 · 185 阅读 · 0 评论 -
349. 两个数组的交集
给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[9,4]说明:输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/intersection-of-two-arrays..原创 2020-06-16 23:44:05 · 115 阅读 · 0 评论 -
976. 三角形的最大周长
给定由一些正数(代表长度)组成的数组A,返回由其中三个长度组成的、面积不为零的三角形的最大周长。如果不能形成任何面积不为零的三角形,返回0。提示:3 <= A.length <= 10000 1 <= A[i] <= 10^6我的提交代码:classSolution{publicintlargestPerimeter(int[]A){Arrays.sort(A);for(i...原创 2020-06-16 23:42:52 · 177 阅读 · 0 评论 -
1122. 数组的相对排序
给你两个数组,arr1 和arr2,arr2中的元素各不相同arr2 中的每个元素都出现在arr1中对 arr1中的元素进行排序,使 arr1 中项的相对顺序和arr2中的相对顺序相同。未在arr2中出现过的元素需要按照升序放在arr1的末尾。示例:输入:arr1 = [2,3,1,3,2,4,6,7,9,2,19], arr2 = [2,1,4,3,9,6]输出:[2,2,2,1,4,3,3,9,6,7,19]提示:arr1.length, arr...原创 2020-06-15 23:21:18 · 172 阅读 · 0 评论 -
922. 按奇偶排序数组 II
给定一个非负整数数组A, A 中一半整数是奇数,一半整数是偶数。对数组进行排序,以便当A[i] 为奇数时,i也是奇数;当A[i]为偶数时, i 也是偶数。你可以返回任何满足上述条件的数组作为答案。示例:输入:[4,2,5,7]输出:[4,5,2,7]解释:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也会被接受。提示:2 <= A.length <= 20000A.length % 2 == 00 <= A[i] <=...原创 2020-06-15 23:18:57 · 170 阅读 · 0 评论