function countSort(array) {
let hash = {},
min = array[0],
max = array[0],
result = [];
for (let i = 0; i < array.length; i++) {
if (!(array[i] in hash)) {
hash[array[i]] = 1
} else {
hash[array[i]] += 1
}
if (array[i] > max) {
max = array[i]
} else if (array[i] < min) {
min = array[i]
}
}
for (let i = min; i <= max; i++) {
if (i in hash) {
for (let j = 0; j < hash[i]; j++) {
result.push(i)
}
}
}
return result
}