Python の爆速 "in set" に julia で挑む
@kitadakyou さんの Pythonで"in list"から"in set"に変えただけで爆速になった件とその理由 というブログのコードを julia の Array で挑んだらどうなるかを試してみました。 まず、自分の python3 で、"in set" 実行した時の時間です。 >>> for _ in range(10): # 今回は実験のため、10回実行 ... result = 0 ... start_time = time.time() ... for _ in range(100000): ... num = randint(1, 10000000) # 改めて1 ~ 10000000 の間の数値をランダムに 100000 個選び、集合中にあれば result を + 1 する ... if num in a: # 要素が集合中に存在するかチェック ... result += 1 ... # print(result) ... print("elapsed_time:{time} sec".format(time=time.time() - start_time)) ... elapsed_time:0.17500686645507812 sec elapsed_time:0.17588305473327637 sec elapsed_time:0.17502999305725098 sec elapsed_time:0.1756739616394043 sec elapsed_time:0.17586398124694824 sec elapsed_time:0.17543387413024902 sec elapsed_time:0.1754751205444336 sec elapsed_time:0.17451786994934082 sec elapsed_time:0.1747879981994629 sec 上記がベンチマークです。 では、julia に移植、といっても set() はないので、Array()...