62,621
社区成员
发帖
与我相关
我的任务
分享
import java.util.*;
class test
{
public static void main(String[] args){
int a[]={3,5,3,7,4};
int i,j,k;
int b[]=new int[5];
int c[]=new int[5];
System.arraycopy(a, 0, b,0,a.length);
Arrays.sort(b);
k=b.length;
for(i=0;i<k;++i){
if(b[i]==b[i+1]&&(i+1)<k){
for(j=i+1;j<k;++j){
b[j-1]=b[j];
}
k--;i--;
}
}
for(i=0;i<a.length;++i){
for(j=0;j<k;++j){
if(a[i]==b[j]) {c[i]=j+1;break;}
}
}
for(i=0;i<a.length;++i){
System.out.println(a[i]+"--> pos["+c[i]+"]");
}
}
}
package com.keeya.csdn.test;
public class GetValuesArray {
public static void main(String[] args) {
int[] arr = { 3, 5, 3, 7, 4 };
int[] v = arrTheValues(arr);
for(int i = 0; i < v.length; i++){
System.out.print(v[i] + " ");
}
}
public static int[] arrTheValues(int[] arr) {
int[] values = new int[getMaxOfArray(arr) + 1];
int[] arrValuesArray = new int[arr.length];
int temp = 0;
for (int i = 0; i < arr.length; i++) {
values[arr[i]] = 1;
}
for (int j = 0; j < values.length; j++) {
if (values[j] == 0) {
temp++;
} else {
values[j] = j + 1 - temp;
}
}
for (int m = 0; m < arr.length; m++) {
arrValuesArray[m] = values[arr[m]];
}
return arrValuesArray;
}
private static int getMaxOfArray(int[] arr) {
if (arr == null)
return -1;
int temp = arr[0];
for (int i = 0; i < arr.length; i++) {
if (arr[i] > temp) {
temp = arr[i];
}
}
return temp;
}
}