Pythonでのハミング距離
これを解決するには、次の手順に従います-
- i=31から0まで
- b1 =xの右シフト(i AND 1回)
- b2 =yの右シフト(i AND 1回)
- b1 =b2の場合、答え:=回答+ 0、それ以外の場合、回答:=回答+1
- 回答を返す
例
理解を深めるために、次の実装を見てみましょう-
class Solution(object): def hammingDistance(self, x, y): """ :type x: int :type y: int :rtype: int """ ans = 0 for i in range(31,-1,-1): b1= x>>i&1 b2 = y>>i&1 ans+= not(b1==b2) #if not(b1==b2): # print(b1,b2,i) return ans ob1 = Solution() print(ob1.hammingDistance(7, 15))
入力
7 15
出力
1
-
Pythonのissuperset()
この記事では、Pythonでのissuperset()と、さまざまな分野でのその実装について学習します。 このメソッドは、セットBのすべての要素に引数として渡されるすべての要素セットAが含まれている場合はブール値Trueを返し、Aのすべての要素がBに存在しない場合はfalseを返します。 これは、BがAのスーパーセットである場合、それを意味します returns true; else False 例 いくつかの例を見てみましょう A = {'t','u','t','o','r','i',
-
Pythonでのミンコフスキー距離
ミンコフスキー距離は距離であり、ノルムベクトル空間では、結果はミンコフスキーの不等式になります。ミンコフスキー距離は、ベクトルの距離の類似性に使用されます。 scipy.spatial.distance.minkowski >>> from scipy.spatial import distance >>> distance.minkowski([1, 0, 0], [0, 1, 0], 1) 2.0 >>> distance.minkowski([1, 0, 0], [0, 1, 0], 2) 1.414213562373095