merge: Fix GnomeSort algorithm and Add test case to it (#948)

This commit is contained in:
Ankush263
2022-03-24 21:50:39 +05:30
committed by GitHub
parent 532cf3e613
commit 73efc89d29
2 changed files with 20 additions and 0 deletions

View File

@ -19,6 +19,7 @@ export function gnomeSort (items) {
i = Math.max(1, i - 1) i = Math.max(1, i - 1)
} }
} }
return items
} }
// Implementation of gnomeSort // Implementation of gnomeSort

View File

@ -0,0 +1,19 @@
import { gnomeSort } from '../GnomeSort'
test('The gnomeSort of the array [5, 4, 3, 2, 1] is [1, 2, 3, 4, 5]', () => {
const arr = [5, 4, 3, 2, 1]
const res = gnomeSort(arr)
expect(res).toEqual([1, 2, 3, 4, 5])
})
test('The gnomeSort of the array [-5, 4, -3, 2, -1] is [-5, -3, -1, 2, 4]', () => {
const arr = [-5, 4, -3, 2, -1]
const res = gnomeSort(arr)
expect(res).toEqual([-5, -3, -1, 2, 4])
})
test('The gnomeSort of the array [15, 4, -13, 2, -11] is [-13, -11, 2, 4, 15]', () => {
const arr = [15, 4, -13, 2, -11]
const res = gnomeSort(arr)
expect(res).toEqual([-13, -11, 2, 4, 15])
})