2012-04-12 9 views
-2

Bitte sagen Sie mir, ob es eine Möglichkeit gibt, einen Punkt in einem 2D-Diagramm mit (x, y) Koordinaten zu zeichnen, indem man einen String ableitet (oder sagen kann) Objekt in numerische Werte für 'x' und 'y'. Beispiel: Ich habe eine Zeichenfolge "abcd". Dies muss als ein Punkt in einem euklidischen Graphen dargestellt werden. Bevorzugte Sprache ist Java.Darstellen eines String-Objekts als Punkt in einem euklidischen 2D-Diagramm

+3

Das ist viel zu vage um zu antworten. Sie könnten es zuordnen, indem Sie einen beliebigen Hash-Code (z. B. "text.hashCode()") verwenden und diesen als "x" -Wert verwenden, wobei y = 0 für alle Zeichenfolgen ist. Vermutlich wäre das * nicht gut genug für Sie - aber es erfüllt alle Anforderungen, die Sie tatsächlich * spezifiziert * haben. –

+1

Was versuchen Sie zu erreichen? Was ist das zugrunde liegende Problem, das Sie versuchen zu lösen? – biziclop

+1

@JonSkeet Verkomplizieren Sie es nicht, x = 0 und y = 0 für jede Zeichenfolge funktioniert genauso gut :) – biziclop

Antwort

10

Ja, es gibt mindestens eine Möglichkeit, dies zu tun.

5

Dinge für Werte zu verwenden:

  • Hash der Zeichenfolge
  • Länge der Saite
  • numerische Addition aller Zeichen
  • [einige mathematische Funktion] aller Zeichen

Verwenden Sie eine von ihnen für x und die andere für y. Da gehst du.

3

Sie könnten versuchen, die Zeichenfolge einem Spam-Filter (x = Spamminess) und etwas, das eine Lesbarkeitsbewertung basierend auf lexikalischen und grammatikalischen Komplexität (y = Lesbarkeit) ergibt, zuzuführen. Oder schreiben Sie etwas, das die StackOverflow-API verwendet, um es als Frage oder Antwort zu senden und grafisch darzustellen, wie viele Upvotes es erhält.

Versuchen Sie auch, die Zeichenfolge selbst als ein Programm zu bewerten - plotten Sie eine 0, wenn sie endet, und eine 1, wenn dies nicht der Fall ist (Sie müssen möglicherweise eine Weile warten, um dieses Ergebnis zu bestimmen).

Verwandte Themen