作者yauhh (喲)
看板Prob_Solve
標題Re: [問題] 關於運用質數的資料處理
時間Sat Jul 31 01:41:40 2010
※ 引述《lO (今天早上)》之銘言:
: 假設我現在有好幾萬筆資料要處理
: 每一筆資料的型態都是不一樣的字串
: 現在我將每一筆字串逐字轉成整數
: 並乘上不同的質數後相加
: 譬如說像這樣:
: "ABC" => (int)'A'*2+(int)'B'*3+(int)'C'*5
: 是否能保證只要原本的字串有任何一位不同
: 就不會有相同的數字出現呢?
: 自己稍微證明了一下
: 也不是很有把握
: 所以上來問問大家@@
(1) for {A1:'a', A2:'a'},
A1*P1 + A2*P2 = A2*P1 + A1*P2,
不過,對 "aa" 來說,調換二字位置仍是 "aa" ,沒影響.
(2) for {A1:'k', A2:'k+1'},
A1*P1 + A2*P2 = k*P1 + (k+1)*P2 = k*(P1+P2) + P2
A2*P1 + A1*P2 = (k+1)*P1 + k*P2 = k*(P1+P2) + P1
看起來OK.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.160.112.170
1F:推 LPH66:你這只是原字串的重排而已...原PO要的是任何字串 07/31 02:03
2F:→ yauhh:哦,沒看懂原文意思 07/31 02:50
3F:推 yuscvscv:"ms" == "B C" ? 07/31 16:22
4F:推 yuscvscv:(109*2) + (115*3) == (66*2) + (32*3) + (67*5) 07/31 16:25
5F:→ yuscvscv:還是要同長度的? 07/31 16:26
6F:→ yauhh:各種字串比較異質性,一定會先比對長度,然後是內容 08/01 13:32
7F:推 yuscvscv:"AAB" == "BBA" 08/02 00:04
8F:推 yuscvscv:(66 * 2) + (66 * 3) + (65 * 5) 08/02 00:05
9F:→ yuscvscv:(65 * 2) + (65 * 3) + (66 * 5) //上面那個是後式 08/02 00:06
10F:→ yuscvscv:兩者值會相等 只要吻合"xxy" "yyx",(x,y任代 08/02 00:07
11F:→ yuscvscv:(乘法結合率而已 08/02 00:08
12F:→ yauhh:對耶,會有二個質數和是另一個質數 08/02 02:15