Skip to content

Commit 119983a

Browse files
authored
Create PigeonHoleSort.java
1 parent a506dca commit 119983a

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
public static void pigeonhole_sort(int arr[],
2+
int n)
3+
{
4+
int min = arr[0];
5+
int max = arr[0];
6+
int range, i, j, index;
7+
8+
for(int a=0; a<n; a++)
9+
{
10+
if(arr[a] > max)
11+
max = arr[a];
12+
if(arr[a] < min)
13+
min = arr[a];
14+
}
15+
16+
range = max - min + 1;
17+
int[] phole = new int[range];
18+
Arrays.fill(phole, 0);
19+
20+
for(i = 0; i<n; i++)
21+
phole[arr[i] - min]++;
22+
23+
24+
index = 0;
25+
26+
for(j = 0; j<range; j++)
27+
while(phole[j]-->0)
28+
arr[index++]=j+min;
29+
30+
}

0 commit comments

Comments
 (0)