回答編集履歴
3
セル値の修正
answer
CHANGED
@@ -100,4 +100,24 @@
|
|
100
100
|
benchmark(think49, createArray.bind(null, 20000), 10);
|
101
101
|
benchmark(think49, createArray.bind(null, 0, 0, 20000), 10);
|
102
102
|
|
103
|
+
benchmark(suyama, createArray.bind(null, 100, 20000, 100), 10);
|
103
|
-
benchmark(suyama, createArray.
|
104
|
+
benchmark(suyama, createArray.bind(null, 20000), 10);
|
105
|
+
benchmark(suyama, createArray.bind(null, 0, 0, 20000), 10);
|
106
|
+
```
|
107
|
+
|
108
|
+
結果は次の通りです。
|
109
|
+
|
110
|
+
|引数に指定した配列コード|コード|実行時間|
|
111
|
+
|:--|:--|:--|
|
112
|
+
|非重複要素100個 + 重複要素20000個 + NaN値の要素10個|think49|228.81396484375ms|
|
113
|
+
|非重複要素100個 + 重複要素20000個 + NaN値の要素10個|suyama|19696.505859375ms|
|
114
|
+
|非重複要素20000個|think49|81.341064453125ms|
|
115
|
+
|非重複要素20000個|suyama|7361.458984375ms|
|
116
|
+
|NaN値の要素20000個|think49|41.86279296875ms|
|
117
|
+
|NaN値の要素20000個|suyama|7258.05810546875ms|
|
118
|
+
|
119
|
+
最後の「NaN値の要素20000個」は意地悪問題でした。
|
120
|
+
NaN値は重複していますが、前述の通り、indexOf, lastIndexOf は NaN 値を検出できない為、配列全体を検索する過程を 2 * 20000 回行います。
|
121
|
+
(正確には一つ重複要素がある為、20001 個の要素を持つ配列を検索しているのと等価です。)
|
122
|
+
|
123
|
+
Re: agepan さん
|
2
セル値の修正
answer
CHANGED
@@ -100,24 +100,4 @@
|
|
100
100
|
benchmark(think49, createArray.bind(null, 20000), 10);
|
101
101
|
benchmark(think49, createArray.bind(null, 0, 0, 20000), 10);
|
102
102
|
|
103
|
-
benchmark(suyama, createArray.bind(null, 100, 20000, 100), 10);
|
104
|
-
benchmark(suyama, createArray.
|
103
|
+
benchmark(suyama, createArray.b
|
105
|
-
benchmark(suyama, createArray.bind(null, 0, 0, 20000), 10);
|
106
|
-
```
|
107
|
-
|
108
|
-
結果は次の通りです。
|
109
|
-
|
110
|
-
|引数に指定した配列コード|コード|実行時間|
|
111
|
-
|:--|:--|:--|
|
112
|
-
|重複がない要素100個 + 重複がある要素20000個 + NaN値の要素10個|think49|228.81396484375ms|
|
113
|
-
|重複がない要素100個 + 重複がある要素20000個 + NaN値の要素10個|suyama|19696.505859375ms|
|
114
|
-
|重複がない要素20000個|think49|81.341064453125ms|
|
115
|
-
|重複がない要素20000個|suyama|7361.458984375ms|
|
116
|
-
|NaN値の要素20000個|think49|41.86279296875ms|
|
117
|
-
|NaN値の要素20000個|suyama|7258.05810546875ms|
|
118
|
-
|
119
|
-
最後の「NaN値の要素20000個」は意地悪問題でした。
|
120
|
-
NaN値は重複していますが、前述の通り、indexOf, lastIndexOf は NaN 値を検出できない為、配列全体を検索する過程を 2 * 20000 回行います。
|
121
|
-
(正確には一つ重複要素がある為、20001 個の要素を持つ配列を検索しているのと等価です。)
|
122
|
-
|
123
|
-
Re: agepan さん
|
1
markdown修正
answer
CHANGED
@@ -109,8 +109,8 @@
|
|
109
109
|
|
110
110
|
|引数に指定した配列コード|コード|実行時間|
|
111
111
|
|:--|:--|:--|
|
112
|
-
|重複がない要素100個 +
|
112
|
+
|重複がない要素100個 + 重複がある要素20000個 + NaN値の要素10個|think49|228.81396484375ms|
|
113
|
-
|重複がない要素100個 +
|
113
|
+
|重複がない要素100個 + 重複がある要素20000個 + NaN値の要素10個|suyama|19696.505859375ms|
|
114
114
|
|重複がない要素20000個|think49|81.341064453125ms|
|
115
115
|
|重複がない要素20000個|suyama|7361.458984375ms|
|
116
116
|
|NaN値の要素20000個|think49|41.86279296875ms|
|