Avatar
Taketo Sano 2/5/2020 8:51 AM
まだ仮説に過ぎませんが,実は edges に順序がついてるのが本質的に効いてるのかもしれません.僕のコードでは x = source に対して,y = target をその targets の中の anyElement として選んでいますが,CPP の方は target = Graph[MM][source].out.front() と最初のものを選んでいます. 辺を取り除くたびに残った頂点たちから生える辺はより密になって行きますが,first から選ぶことで生えてる辺の個数が少ない頂点を選んでいるのかもしれません… もうちょっと考えてみます. (edited)
8:54 AM
その点以外は,使ってるデータ構造の違いしかなく,検索の総数に違いが出る理由はないように見えます…
9:00 AM
とりあえず言語の違いではなく,僕の実装がクソだというところに原因がありそうです…! (結果的に beginner だったということになりそう🙌
9:06 AM
@omochimetaru この計算は,11n37 に対するものですか?