Skip to content

Commit 0d98cb5

Browse files
Merge pull request #134 from veetragnahar/patch-3
Hacktoberfest-2022
2 parents e6417b6 + eb7d294 commit 0d98cb5

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed

Comb_sort.java

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
2+
class CombSort
3+
{
4+
5+
int getNextGap(int gap)
6+
{
7+
8+
gap = (gap*10)/13;
9+
if (gap < 1)
10+
return 1;
11+
return gap;
12+
}
13+
14+
void sort(int arr[])
15+
{
16+
int n = arr.length;
17+
18+
int gap = n;
19+
20+
21+
boolean swapped = true;
22+
23+
while (gap != 1 || swapped == true)
24+
{
25+
// Find next gap
26+
gap = getNextGap(gap);
27+
28+
// Initialize swapped as false so that we can
29+
// check if swap happened or not
30+
swapped = false;
31+
32+
// Compare all elements with current gap
33+
for (int i=0; i<n-gap; i++)
34+
{
35+
if (arr[i] > arr[i+gap])
36+
{
37+
// Swap arr[i] and arr[i+gap]
38+
int temp = arr[i];
39+
arr[i] = arr[i+gap];
40+
arr[i+gap] = temp;
41+
42+
// Set swapped
43+
swapped = true;
44+
}
45+
}
46+
}
47+
}
48+
49+
// Driver method
50+
public static void main(String args[])
51+
{
52+
CombSort ob = new CombSort();
53+
int arr[] = {8, 4, 1, 56, 3, -44, 23, -6, 28, 0};
54+
ob.sort(arr);
55+
56+
System.out.println("sorted array");
57+
for (int i=0; i<arr.length; ++i)
58+
System.out.print(arr[i] + " ");
59+
60+
}
61+
}
62+

0 commit comments

Comments
 (0)