若要求判斷兩個字符串包含的字母是否相同(不考慮字符順序),或者短字符串中的字母是否都在長字符串中(不考慮字符順序),可以使用一個素數代替一個字符,把整串的字符對應的素數乘起來得到一個大的整數,再用短字符串的每個字符對應的素數去除這個大整數,如果每個都能整除,說明短字符串裏的字符在長字符串裏面。
主要是利用了素數沒有除1和自身約數的性質,這樣能保證他們的乘積只能由這些素數組成。
若要求判斷兩個字符串包含的字母是否相同(不考慮字符順序),或者短字符串中的字母是否都在長字符串中(不考慮字符順序),可以使用一個素數代替一個字符,把整串的字符對應的素數乘起來得到一個大的整數,再用短字符串的每個字符對應的素數去除這個大整數,如果每個都能整除,說明短字符串裏的字符在長字符串裏面。
主要是利用了素數沒有除1和自身約數的性質,這樣能保證他們的乘積只能由這些素數組成。