-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path4-kyu-reverse-it-quickly.js
56 lines (41 loc) · 1.38 KB
/
4-kyu-reverse-it-quickly.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
// 4 kyu | -Reverse it, quickly!
// https://www.codewars.com/kata/reverse-it-quickly/train/javascript
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
// /**
// * @param {number[]} a
// */
// const weirdReverse = a =>
// a
// .map((e, i) => ({
// e,
// i,
// }))
// .sort(({ i: ai }, { i: bi }) => bi - ai)
// .map(({ e }) => e);
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
/**
* @param {number[]} a
*/
// const weirdReverse = a =>
// a.reduce((b, c, i) => b.concat(a[a.length - 1 - i]), []);
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
/**
* @param {number[]} a
*/
// const weirdReverse = a => a.reduceRight((b, c) => [...b, c], []);
// length: 51
// weirdReverse=a=> a.reduceRight((b,c)=>[...b,c],[]);
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
/**
* @param {number[]} a
*/
// const weirdReverse = a => Array.prototype.reverse.call(a);
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
/**
* @param {number[]} a
*/
const weirdReverse = a => a.sort(_ => 1);
// weirdReverse=a=>a.sort(_=>1)
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
import { deepStrictEqual } from 'assert';
deepStrictEqual(weirdReverse([1, 2, 3, 4, 5]), [5, 4, 3, 2, 1]);