0
我想比較三種不同的解碼器在python中的漢明碼:蠻力,本地搜索和綜合徵。我有我的蠻力實施問題:在python中的漢明碼解碼器?
def bruteForce(v):
n = len(v)
r = int(math.log(n+1,2))
k = n-r
m = []
d = []
c = []
for i in range(2**k):
m.append(decimalToVector(i,k))
for j in range(2**k):
d.append(hammingDistance(matrixMult(m[j], HammingG(r)),v))
for l in range(2**k):
if d[l] <= 1:
c = matrixMult(m[l], HammingG(r))
return c
這將運行沒有錯誤,但產量只是[]
,而不是二進制數的任何序列,當輸入,例如bruteForce([1,0,0,0,0,0,1])
載體。
你的問題到底是什麼?錯誤(提供追溯)?意想不到的產出(提供投入,預期產出,實際產出)? – jonrsharpe
蠻力編譯好,但輸出是簡單的「[]」,而不是任何序列的二進制數,當輸入是一個向量如bruteForce([1,0,0,0,0,0,1]) – user3236854
作爲輸出是否意想不到'[]'?如果是這樣,爲什麼你初始化C到'[]'?在你的代碼中,返回的值是這個空列表(如果所有'l'的'd [l]> 1'),或者最後一個循環中最後一次計算的結果。 –