public class Arr_Algorithms {
public String findMinMax(int[] arr){
int min = arr[0];
int max = arr[0];
String result = "";
for(int i = 0; i < arr.length; i++){
if(arr[i] < min)
min = arr[i];
if(arr[i] > max)
max = arr[i];
}
result = "MIN:" + min + " Max:" + max;
return result;
}
public String CalculateSum(int[] arr){
int sum=0;
for(int i:arr)
sum+=i;
double average= (double)sum/arr.length;
int mode=arr[0];
int Maxcount=1;
for(int num:arr){
int count=0;
for(int n:arr){
if(n==num)
count++;
}
if(count>Maxcount){
Maxcount=count;
mode=num;
}
}
return "sum: "+sum+" average: "+average+ " mode: "+mode;
}
public String Even(int[] arr){
boolean hasEven=false;
for(int i:arr){
if(i%2==0){
hasEven=true;
}
}
return hasEven?"true":"false";
}
public String CheckAllEven(int[] arr){
boolean alleven=true;
for(int num:arr){
if(num%2==1)
alleven=false;
}
return alleven?"true":"false";
}
public String Consecutive(int[] arr){
int n=arr.length;
//排序
for(int i=0;i<n-1;i++){
for(int j=0;j<n-i-1;j++){
if(arr[j]>arr[j+1]){
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
boolean result=true;
for(int i=1;i<arr.length;i++){
if(arr[i]-arr[i-1]!=1)
result=false;
}
return result?"true":"false";
}
public String duplicate(int[] arr){
boolean result=false;
for(int i=1;i<arr.length;i++){
if(arr[i]-arr[i-1]==1)
result=true;
}
return result?"Yes,Array has duplicate elements":"No,Array has no duplicate elements";
}
public int[] ReverseArr(int[] arr){
int back=arr.length-1;
for(int front=0;front<arr.length/2;front++){
int temp=arr[front];
arr[front]=arr[back];
arr[back]=temp;
back--;
}
for(int num:arr){
System.out.printf(num+" ");
}
System.out.println(" ");
return arr;
}
public int[] shiftRight(int[] arr){
int x=arr[arr.length-1];
for(int i=0;i<arr.length;i++){
int temp=arr[i];
arr[i]=x;
x=temp;
}
for(int i:arr){
System.out.printf(i+" ");
}
return arr;
}
//main
public static void main(String[] args) {
Arr_Algorithms d1 = new Arr_Algorithms();
int[] numbers1 = {1, 1, 5, 3, 2, 4, 7, 8, 9, 10};
System.out.println(d1.findMinMax(numbers1));
int[] numbers2={1,1,2,2,3,3,3,3,3,3,4,4};
System.out.println(d1.CalculateSum(numbers2));
int[] numbers3={1,2,3,5};
System.out.println(d1.Even(numbers3));
int[] numbers4={2,4,6,8,4};
System.out.println(d1.CheckAllEven(numbers4));
int[] numbers5={47,43,44,45,46};
System.out.println(d1.Consecutive(numbers5));
int[] numbers7={1,2,3,4,4};
System.out.println(d1.duplicate(numbers7));
int[] numbers8={1,2,3,4,5};
d1.ReverseArr(numbers8);
int[] numbers9={1,2,3,4,5};
d1.shiftRight(numbers9);
}
}
Java代码
最新推荐文章于 2025-12-03 13:56:23 发布
1591

被折叠的 条评论
为什么被折叠?



