2012-04-12 45 views
-2

請告訴我是否有方法使用(x,y) 座標通過派生(或我可以說映射)字符串來繪製二維圖上的點將對象轉換爲'x'和'y'的數值。 例如:我有一個字符串「abcd」。這需要在歐幾里德圖中表​​示爲一個點。 最好的語言是Java。將字符串對象表示爲二維歐幾里德圖中的一個點

+3

這太含糊地回答了。您可以通過採用一些任意的哈希碼(例如'text.hashCode()')並將其用作「x」值來映射它,所有字符串的y = 0。據推測,*對你來說不夠好 - 但它滿足你實際指定的每個要求*。 – 2012-04-12 15:47:25

+1

你想達到什麼目的?你試圖解決的根本問題是什麼? – biziclop 2012-04-12 15:50:22

+1

@JonSkeet不要過度複雜它,每個字符串x = 0和y = 0的作品也一樣:) – biziclop 2012-04-12 15:51:29

回答

10

是的,至少有一種方法可以做到這一點。

5

東西要用於值:

  • 散列字符串的
  • 長度字符串的
  • 數字除了所有的字符的
  • [一些數學函數]的所有字符

將其中一個用於x,另一個用於y。你走了。

3

您可以嘗試將字符串提供給垃圾郵件過濾器(x = spamminess),並根據詞彙和語法複雜性(y =可讀性)給出可讀性評分。或者編寫一些使用StackOverflow API將其作爲問題或答案提交的內容,並繪製它獲得的提議數量。

此外,嘗試評估字符串本身作爲一個程序 - 繪製一個0,如果它終止,1,如果它沒有(你可能需要等待一段時間來確定這個結果)。