我需要一個散列函數,它將值0-9映射到0,10-19到1,20-29到2,30-39到3和-1到-9到-1, 10到-19到-2等散列函數計算
int hash (int value) {
return (int)(value/10);
}
適用於正數,但0到-9映射到0和負數是錯誤的。我能做些什麼來彌補這一點?
我需要一個散列函數,它將值0-9映射到0,10-19到1,20-29到2,30-39到3和-1到-9到-1, 10到-19到-2等散列函數計算
int hash (int value) {
return (int)(value/10);
}
適用於正數,但0到-9映射到0和負數是錯誤的。我能做些什麼來彌補這一點?
如何將'0'映射爲** ** 1和'-1'? – QBrute
已修復。負數應該給一個負散列,我只是包含十進制值(-0.00000001),但真的這個函數需要一個整數,所以應該沒關係 –
爲什麼這有Java標記? –