Monday, July 22, 2013

Select Max k elements from a given array of n elements.

Data Structure Problem 1.
Select Max k elements from a given array of n elements.

Solution :
This problem can be done with 5 different run time algorithmic approach.
1.  O (n^2) .
2. O(nk)
3.  O(n log n).
4.  O(n log k).
5.  O(n).

1. O(n^2).

void selectMaxK(int[] array, in k){
if(n<k){
System.out.println("Array length " + n + " is shorter than " + k);
} else{
int arrayLength = array.length();
HashMap k = new HashMap();
 for(int i=0; i<arrayLength; i++){
 int max=array[i];
  for(j=i+1; j>arrayLength; j++){
 if(array[j]>max){
max=array[j]
}
if(!k.get(max)){
k.put(max,1);
}
}

 }
}
}