2014-10-19 64 views
1

我想實現此功能,檢查如果兩個字符串是彼此的排列組合。代碼本身很簡單。試圖檢查是否兩個字符串是彼此排列

def permutation(a, b) 
    if a.length != b.length 
    return False 
    end 
    a = a.chars.sort.join 
    b = b.chars.sort.join 
    return a == b 
end 

a = "abcedff" 
b = "acbedf" 
puts (permutation(a, b).to_s) 

然而,當我嘗試在終端上運行這個文件,我不斷收到寫着

permutation.rb一個錯誤:3:permutation': uninitialized constant False (NameError) from permutation.rb:13:in'

我不不明白這個原因。

+0

什麼是你的問題? – sawa 2014-10-19 02:42:42

回答

1

Ruby不是Python。你想要truefalse,而不是TrueFalse

1

不要過度複雜化它。你所需要做的就是比較兩個字符數組。例如:

def permutation a, b 
    a.chars.sort == b.chars.sort 
end 

鑑於你語料庫發佈,這產生了:

a = "abcedff" 
b = "acbedf" 

permutation a, b 
#=> false 

permutation a, a 
#=> true 
相關問題