Ruby Möglichkeit zu Überprüfen, für string-Palindrom
Wollte ich überprüfen, ob ein string ein Palindrom ist oder nicht mit ruby-code.
Ich bin ein starter in ruby so nicht zu doch vertraut mit der string methods
in ruby
InformationsquelleAutor Mithun Sasidharan | 2011-12-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie sind nicht vertraut mit Ruby ' s
String
Methoden, sollten Sie einen Blick auf die Dokumentation, ist es sehr gut. Mithun Antwort bereits gezeigt hat, dass Sie das grundlegende Prinzip, aber da Sie neu in Ruby, es gibt ein paar Dinge im Auge zu behalten:*) Wenn Sie eine Prädikat-Methode, ist es üblich, einen Namen mit einem abschließenden Fragezeichen, z.B.
palindrome?
.*) Boolesche Ausdrücke, um einen booleschen Wert, so brauchen Sie nicht explizit zurück
true
oderfalse
. Daher eine kurze idiomatische version wäre*) Da Ruby ' s Klassen sind offen, Sie könnte dies zu der string-Klasse:
*) Wenn Sie nicht möchten, monkey-patch
String
können Sie direkt definieren Sie die Methode auf einzelnen Objekts (oder verwenden Sie ein Modul, und Objekt#erweitern):*) Möchten Sie vielleicht, um die Palindrom-check ein wenig komplexer, z.B. wenn es um die Fall-oder whitespace-Zeichen, so sind Sie auch in der Lage zu erkennen Palindrom Sätze in Großbuchstaben geschriebene Worte wie "Rennwagen", etc.
self.
(aber nicht die Verwendungen vonself
ohne den Punkt) sind entbehrlich.So sind Klammern um methodenargumente. Coding style ist, wie Geschmack, jeder andere ist schlecht 😉
Ist das nicht super teuer? Erstellen eines neuen array nur um zu überprüfen, ob das Wort Palindrom? Ich weiß, es ist kurz-code und sieht ziemlich... aber es fühlt sich teuer...
Die einzige version, dass ein array erstellt wird ist die Letzte, die tatsächlich in den Prozess entfernt Satzzeichen ignoriert, Fall, etc. Aber wenn Sie wirklich in die Mikro-Optimierung kurzen code-snippets, ALSO tobt Euch aus.
InformationsquelleAutor Michael Kohl
InformationsquelleAutor Mithun Sasidharan
Die rekursive Lösung zeigt, wie strings indiziert werden können, die in Ruby:
Wenn das Lesen der Ruby-string Dokumentation ist zu langweilig für Sie ist, versuchen Sie das Spiel mit der Ruby-Praxis Fragen auf CodeQuizzes und Holen Sie die meisten der wichtigen Methoden.
InformationsquelleAutor Powers
InformationsquelleAutor A H K
InformationsquelleAutor Josh Brody
InformationsquelleAutor PIYUSH SAWARIA