Skip to content

Commit bf3c7c5

Browse files
author
Jonas
committed
add ShellSort in java
1 parent a40103f commit bf3c7c5

File tree

1 file changed

+43
-0
lines changed

1 file changed

+43
-0
lines changed

Sorting/ShellSort/java/ShellSort.java

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
public class ShellSort{
2+
3+
public static int[] shellSort(int arr[]){
4+
int temp;
5+
int n = arr.length;
6+
for(int i = n/2; i>0; i=i/2){
7+
for(int j = i; j<n; j++){
8+
for(int k=j-i;k>=0;k=k-i){
9+
if(arr[k+i]>=arr[k]){
10+
break;
11+
}else{
12+
temp = arr[k];
13+
arr[k] = arr[k+i];
14+
arr[k+i] = temp;
15+
}
16+
}
17+
}
18+
}
19+
return arr;
20+
}
21+
22+
23+
public static void main(String[] args) {
24+
int array[] = {473, 78, 92, 5, 18, 7, 65, 89, 7};
25+
int sortedArray[];
26+
System.out.println("Before: ");
27+
int n = array.length;
28+
for (int i = 0; i < n; ++i) {
29+
System.out.print(array[i] + " ");
30+
}
31+
System.out.println();
32+
33+
sortedArray = shellSort(array);
34+
35+
System.out.println("After: ");
36+
n = sortedArray.length;
37+
for (int i = 0; i < n; ++i) {
38+
System.out.print(sortedArray[i] + " ");
39+
}
40+
System.out.println();
41+
}
42+
43+
}

0 commit comments

Comments
 (0)