1365. 有多少小于当前数字的数字
题目链接:1365. 有多少小、于当前数字的数字 - 力扣(LeetCode)
题目难度:简单
代码:
class Solution {public int[] smallerNumbersThanCurrent(int[] nums) {Map<Integer,Integer> map=new HashMap<>();int[] res=Arrays.copyOf(nums,nums.length);Arrays.sort(res);for(int i=0;i<res.length;i++){if(!map.containsKey(res[i]))map.put(res[i],i);}for(int i=0;i<nums.length;i++){res[i]=map.get(nums[i]);}return res;}
}
941. 有效的山脉数组
题目链接:941. 有效的山脉数组 - 力扣(LeetCode)
题目难度:简单
代码:
class Solution {public boolean validMountainArray(int[] arr) {if(arr.length<3) return false;int left=0;int right=arr.length-1;while(left+1<arr.length&&arr[left]<arr[left+1])left++;while(right>0&&arr[right]<arr[right-1])right--;if(left==right&&left!=0&&right!=arr.length-1)return true;return false;}
}
1207. 独一无二的出现次数
题目链接:1207. 独一无二的出现次数 - 力扣(LeetCode)
题目难度:简单
代码:
class Solution {public boolean uniqueOccurrences(int[] arr) {int[] count=new int[2001];for(int i=0;i<arr.length;i++){count[arr[i]+1000]++;}boolean[] flag=new boolean[1002];for(int i=0;i<=2000;i++){if(count[i]>0){if(flag[count[i]]==false)flag[count[i]]=true;elsereturn false;}}return true;}
}
283. 移动零
题目链接:283. 移动零 - 力扣(LeetCode)
题目难度:简单
代码:
class Solution {public void moveZeroes(int[] nums) {int slow=0;for(int fast=0;fast<nums.length;fast++){if(nums[fast]!=0)nums[slow++]=nums[fast];}for(int j=slow;j<nums.length;j++){nums[j]=0;}}
}
189. 轮转数组
题目链接:189. 轮转数组 - 力扣(LeetCode)
题目难度:中等
代码:
class Solution {public void reverse(int[] nums,int start,int end){for(int i=start,j=end;i<j;i++,j--){int temp=nums[i];nums[i]=nums[j];nums[j]=temp;}}public void rotate(int[] nums, int k) {int n=nums.length;k%=n;reverse(nums,0,n-k-1);reverse(nums,n-k,n-1);reverse(nums,0,n-1);}
}