Reverse einem bestimmten Satz in Java
Kann mir jemand sagen, wie man ein Java-Programm schreiben zu reverse einem bestimmten Satz?
Zum Beispiel, wenn die Eingabe:
"Dies ist eine interview-Frage"
Den output muss sein:
"- Frage interview ist diese"
Sie sollten wahrscheinlich betrachten Sie die Einnahme von Java-Zertifizierung-Klassen, die Sie lehren, wird Sie Häufig verwendete Java-Bibliothek Klassen. Sie haben dann die Werkzeuge, die Sie zum erfüllen dieser Aufgaben.
Umkehren der Zeichenfolge ersten. Rückseite die Worte dann. Es dauert zwei pass, aber sehr sauber. Gemacht werden kann in 1-pass sowie.
Ich glaube, dein erstes Wort war gemeint, "split", ja?
gut, "die Frage" -> "noitseuq eht" -> "die Frage" funktioniert immer noch, und ich vermute, dass ist das, was Jack gemeint, da die Antwort schon gepostet habe, Ihren Weg.
Nein. Was ich meinte war (in python):<br> str = "dies ist die interview-Frage" <br> str1 = str[::-1] <br> print str1 <br> für Wort in str1.split(" "): <br> print Wort[::-1] <br>
Umkehren der Zeichenfolge ersten. Rückseite die Worte dann. Es dauert zwei pass, aber sehr sauber. Gemacht werden kann in 1-pass sowie.
Ich glaube, dein erstes Wort war gemeint, "split", ja?
gut, "die Frage" -> "noitseuq eht" -> "die Frage" funktioniert immer noch, und ich vermute, dass ist das, was Jack gemeint, da die Antwort schon gepostet habe, Ihren Weg.
Nein. Was ich meinte war (in python):<br> str = "dies ist die interview-Frage" <br> str1 = str[::-1] <br> print str1 <br> für Wort in str1.split(" "): <br> print Wort[::-1] <br>
InformationsquelleAutor giri | 2010-04-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den split der string durch den Raum, dann Durchlaufen Sie nach hinten zu montieren der umgekehrte Satz.
Gibt es einen Grund, warum man die Verkettung zu einem
string
(legt eine neuestring
Objekt jedes mal) statt mit einemStringBuilder
?Parker - zeigt lediglich das Prinzip. Dies kann natürlich angepasst werden, um mehr performant (wenn nötig).
entfernen Sie die Leerzeichen. Nicht, dass die Frage angegeben, aber wie du, mag ich nicht extra Räume wie, die.
was ist zu sagen, dass über die Optimierung...
InformationsquelleAutor Oded
(mit
ArrayUtils
undStringUtils
aus commons-lang, aber diese sind einfache Methoden, um zu schreiben - nur ein paar loops)gut. dass über zu gehen zu gehen ist nicht einfach, diese Frage interview für die Bibliothek außerhalb einer Nutzung
wenn Sie wissen, commons-lang gut genug, um zu schreiben, dass code, ich denke, es würde SEHR gut gehen über sehr gut.
Ich denke nicht so. Wenn Sie Sie bitten, zu erklären, wie diese Methoden implementiert, würde Sie immer in der Lage sein zu erklären, aber damit erhöhen Sie die Eleganz des Codes. Was, wenn diese methdos waren in
java.util.Arrays
?Wenn jemand demonstriert Wertschätzung der kennen und verwenden die Bibliotheken - Leitlinie in einem interview, würde ich auf jeden Fall berücksichtigen, dass ein plus.
InformationsquelleAutor Bozho
Einfach anders: eine rekursive Lösung. Doesn ' T fügen Sie keine zusätzlichen Leerzeichen.
Werde ich auch verbessern, auf die
split
Lösung mit\b
statt (es ist so offensichtlich!).InformationsquelleAutor polygenelubricants
Bozho gab bereits eine große Java-spezifische Antwort, aber in der Veranstaltung, die Sie jemals brauchen werden, um dieses problem zu lösen, ohne Java-API-Methoden:
Umkehren, können Sie einfach pop-einzelne Wörter auf eine
stack
- und pop-Sie alle Rücken aus, wenn es keine Worte übrig.(Nur zusätzlich zu sein, klar, Java ist ein
Stack
Klasse, so ist es möglich, diese Methode in Java).InformationsquelleAutor Pops
Verteilt es auf ein Leerzeichen in einem string-array, dann Schleife über das array in umgekehrter Reihenfolge und bauen Sie den Ausgabe-string.
InformationsquelleAutor Rich Adams
einer jeden langweiligen bit java:
in groovy ist es ein bisschen besser lesbar:
InformationsquelleAutor Gareth Davis
Ich auch probieren Sie es aus: Hier eine version mit einem stack und einem scanner:
InformationsquelleAutor Searles
InformationsquelleAutor gmhk
schöner Ansatz wahrscheinlich.. gesehen hatte, die Logik irgendwo..hier ist mein code, die vielleicht die Arbeit machen.
InformationsquelleAutor Shashi
`
InformationsquelleAutor Rajender Saini
versuchen Sie bitte unten die Lösung, das ist für mich arbeiten.
InformationsquelleAutor Babasaheb Matsagar
Niemand hat erwähnt, Vanille-Java-8-basierten Lösung noch, das ist das gleiche wie Bozho ist, aber ohne third-party-Bibliotheken. Also hier ist es:
InformationsquelleAutor Lukas Eder
Bevor StringTokenizer erklärt wurde, Vermächtnis, viele verwendet StringTokenizer. Ich dachte, ich würde nur lassen Sie es hier.
InformationsquelleAutor Sajal Dutta
Kürzeste Antwort
}
ODER
InformationsquelleAutor Rishabh Agarwal