回答編集履歴
2
別パターンも追記
answer
CHANGED
@@ -15,4 +15,17 @@
|
|
15
15
|
|
16
16
|
pointSort([4, 1, 2, 3, 5, 7, 6], 4); // [4, 5, 6, 7, 1, 2, 3]
|
17
17
|
|
18
|
+
```
|
19
|
+
|
20
|
+
行数は減りますが、sort+concat+filter×2と、メソッドの使用回数は増えます。
|
21
|
+
```javascript
|
22
|
+
const pointSort = function(array, num) {
|
23
|
+
const preSort = (a, b) => a - b,
|
24
|
+
overFilter = (v) => v >= num,
|
25
|
+
lessFilter = (v) => v < num,
|
26
|
+
arr = array.slice().sort(preSort);
|
27
|
+
return arr.filter(overFilter).concat(arr.filter(lessFilter));
|
28
|
+
};
|
29
|
+
|
30
|
+
pointSort([4, 1, 3, 2, 5, 7, 6], 4); // [4, 5, 6, 7, 1, 2, 3]
|
18
31
|
```
|
1
不要変数の削除
answer
CHANGED
@@ -8,12 +8,9 @@
|
|
8
8
|
}
|
9
9
|
return 1;
|
10
10
|
}
|
11
|
-
|
12
11
|
return a - b;
|
13
|
-
}
|
12
|
+
};
|
14
|
-
|
13
|
+
return array.slice().sort(preSort).sort(mainSort);
|
15
|
-
|
16
|
-
return arr;
|
17
14
|
};
|
18
15
|
|
19
16
|
pointSort([4, 1, 2, 3, 5, 7, 6], 4); // [4, 5, 6, 7, 1, 2, 3]
|