Correctness and the Loop Invariant
The following is the solution to Hacker Rank problem Correctness and the Loop Invariant using Java. For solutions to other Hacker Rank Problem visit my page HackerRank, alternatively try searching for the problem in my blog.
The required condition for correctness of the loop invariant is to have "less than or equal to zero
"(<= 0) condition highlighted in the below code.
"(<= 0) condition highlighted in the below code.
Score: 15/15
/**
*
*/
import java.util.Scanner;
/**
* @author Arun.G
*
*/
public class Solution{
/**
* @param args
*/
public static void insertionSort(int[] A){
for(int i = 1; i < A.length; i++){
int value = A[i];
int j = i - 1;
while(j >= 0 && A[j] >
value){
A[j + 1] = A[j];
j = j - 1;
}
A[j + 1] = value;
}
printArray(A);
}
static void printArray(int[] ar) {
for(int n: ar){
System.out.print(n+" ");
}
}
public static void main(String[]
args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int[] ar = new int[n];
for(int i=0;i<n;i++){
ar[i]=in.nextInt();
}
insertionSort(ar);
in.close();
}
}
|
No comments:
Post a Comment