首先,我的目的是隨機獲得兩個已知集合中的一個元素。所以我原來的方法是先交叉兩組。然後從相交集合中隨機選取一個元素。但這是愚蠢的,因爲我只需要一個元素,但是一個相交的集合。python中'set.intersection()'的算法是什麼?
所以我需要找到set.intersection的算法()。
我比較的方法「set.intersection()」之間的時間成本「爲{爲{}}」。 Set.intersection()比另一個(100次)更快。因此,使用'for {for {}}'來隨機取出元素並不是一個明智的想法。
背後有什麼在python set.intersection()的算法?
CPython的一個,Jython的,IronPython的一個或pypy一個? :p ...只要調用'set.intersection'時返回正確的結果,那麼任何實現都可以自由地執行它的感覺。你可以免費下載/查看任何實現的源代碼,看看它們是如何實現的...... –
你的真實使用模式是什麼?真正的問題是'從兩組交集中得到一個隨機元素的最快方法是什麼?'這可能取決於你的數據是否最初是一個集合。 –