Skip to content

Commit c7b7bd3

Browse files
committed
readonly improvements
1 parent d728340 commit c7b7bd3

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

src/functions/minimum.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// I prefer iterating over recursivity in almost all cases.
22
// Is a good exercise to do some things with recursivity tho.
33

4-
export function min(...numbers: number[]) {
4+
export function min(...numbers: readonly number[]) {
55
let smaller = Infinity;
66

77
for (const num of numbers) {
@@ -13,18 +13,18 @@ export function min(...numbers: number[]) {
1313
return smaller;
1414
}
1515

16-
export function minRecursive(...numbers: number[]) {
17-
const finder = (current: number, competitor?: number) => {
18-
if (!competitor) {
19-
return current;
16+
export function minRecursive(...numbers: readonly number[]) {
17+
const finder = (min: number, idx: number) => {
18+
if (idx >= numbers.length) {
19+
return min;
2020
}
2121

22-
if (competitor < current) {
23-
current = competitor;
22+
if (numbers[idx] < min) {
23+
min = numbers[idx];
2424
}
2525

26-
return finder(current, numbers.pop());
26+
return finder(min, idx + 1);
2727
};
2828

29-
return finder(Infinity, numbers.pop());
29+
return finder(Infinity, 0);
3030
}

0 commit comments

Comments
 (0)