
解法
立即学习“Java免费学习笔记(深入)”;
class Solution {
public int[] relativeSortArray(int[] arr1, int[] arr2) {
int[] arr = new int[1001];
int[] ans = new int[arr1.length];
int index = 0;
for(int i =0;i<arr1.length;i++){
arr[arr1[i]]+=1;
}
for(int i = 0;i<arr2.length;i++){
while(arr[arr2[i]]>0){
arr[arr2[i]]--;
ans[index] = arr2[i];
index++;
}
}
for(int i =0;i<arr.length;i++){
if(arr[i]!=0){
for(int j =0;j<arr[i];j++){
ans[index] = i;
index++;
}
}
}
return ans;
}
}
解法
立即学习“Java免费学习笔记(深入)”;
class Solution {
public int findLucky(int[] arr) {
int[] nums = new int[500];
for(int i =0;i<arr.length;i++){
nums[arr[i]]+=1;
}
int max = -1;
for(int i = 1;i<nums.length;i++){
if(i == nums[i]){
max = Math.max(max,i);
}
}
return max;
}
}
解法
立即学习“Java免费学习笔记(深入)”;
class Solution {
public int maxPower(String s) {
if(s.length()==1) return 1;
int left = 1;
int max = Integer.MIN_VALUE;
int con = 1;
while(left<s.length()){
if(s.charAt(left)==s.charAt(left-1)){
con++;
max = Math.max(con,max);
}else{
max = Math.max(con,max);
con = 1;
}
left++;
}
return max;
}
}
解法
立即学习“Java免费学习笔记(深入)”;
class Solution {
public boolean canMakeArithmeticProgression(int[] arr) {
Arrays.sort(arr);
int num = arr[1]-arr[0];
for(int i = 1;i<arr.length;i++){
if(arr[i]-arr[i-1]==num){
continue;
}else{
return false;
}
}
return true;
}
}以上就是Java数组、字符和等差数列问题怎么解决的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号