Char Array rekursiv vergleichen

Robert Zenz

Top Contributor
Das ist richtig...ich sollte bei Gelegenheit lesen lernen, Verzeihung.

In dem Fall imitierst du eine for-Schleife, in dem du einfach den zu vergleichenden Index an die Funktion uebergibst, diese Funktion ruft dann natuerlich wieder sich selbst auf mit einem hochgezaehlten Index. Also als Pseudo-Code:

Code:
function compare(..., int index) {
    // TODO Comparison and checks here.
    compare(..., ++index);
}
 

Aboya

Mitglied
Das ist richtig...ich sollte bei Gelegenheit lesen lernen, Verzeihung.

In dem Fall imitierst du eine for-Schleife, in dem du einfach den zu vergleichenden Index an die Funktion uebergibst, diese Funktion ruft dann natuerlich wieder sich selbst auf mit einem hochgezaehlten Index. Also als Pseudo-Code:

Code:
function compare(..., int index) {
    // TODO Comparison and checks here.
    compare(..., ++index);
}
public static boolean P(char[] x, char[] y,int i) {

if(x==y|| (x=='*')) return P(x,y,i++);
else return false;
}

public static boolean Matching(String pattern, String string) {

p = (pattern).toCharArray(); //In der Angabe mitgeliefert
s= (string).toCharArray(); // auch
int i=0;
if(p.length<s.length)return false;

return P(p,s,i);
}

meinst so ungefähr? Das mit dem * dienst als Platzhalter , Teil der Aufgabe. Es kommt Index 0 out of Bound for Length 0 raus.
 

fhoffmann

Top Contributor
Das erinnert mich an fogenden Thread (von heute):

Und bitte schreibe in diesem Forum deinen Code in Code-Tags - sonst wird [i] als "kursiv" interpretiert.
 
Zuletzt bearbeitet:

Aboya

Mitglied
Das erinnert mich an fogenden Thread (von heute):

Und bitte schreibe in diesem Forum deinen Code in Code-Tags - sonst wird [i] als "kursiv" interpretiert.
Java:
public static boolean M(int pPos, int sPos) {
        
        if(pArray[pPos]=='a'){
            if(sArray[sPos]=='a')
                M(pPos+1,sPos+1);
        }
        else if(pArray[pPos]=='b'){
            if(sArray[sPos]=='b')
                M(pPos+1,sPos+1);
        }
        else if(pArray[pPos]=='c'){
            if(sArray[sPos]=='c')
                M(pPos+1,sPos+1);
        }
        else if(pArray[pPos]=='*'){
            for (int i = 0; i < sArray.length; i++){
                if(M(pPos+1,i)==true)
                    return true;
            }
        }
            
        return false;
    }   
    
    public static boolean isMatching(String pattern, String string) {
        
        pArray = (pattern).toCharArray();
        sArray = (string).toCharArray();
        int pPos=0;
        int sPos=0;
        
        return M(pPos,sPos);
    }
 

Aboya

Mitglied
Soll das so aussehen? Ich bekomm ein IndexOutOfBound. Wie schau ich nach ob an Position pPos ein Buchstabe drinnen ist und dann beim anderen Array ob es derselbe dort ist?
 

fhoffmann

Top Contributor
Zunächst musst du natürlich den Wert deiner Überprüfung auch zurückgeben; also statt
Java:
        if(pArray[pPos]=='a'){
            if(sArray[sPos]=='a')
                M(pPos+1,sPos+1);
        }
richtiger:
Java:
        if(pArray[pPos]=='a'){
            if(sArray[sPos]=='a')
                return M(pPos+1,sPos+1);
        }

EDIT:
außerdem musst du natürlich "false" zurückgeben, wenn die beiden Buchstaben nicht übereinstimmen; also
Java:
        if(pArray[pPos]=='a'){
            if(sArray[sPos]=='a')
                return M(pPos+1,sPos+1);
            } else {
               return false;
           }
     }
Dann würde ich die Prüfung auf Stern (if(pArray[pPos]=='*') vorziehen; dann kannstdu dir die anderen ifs sparen (außer der Überprüfung auf ".").
 
Zuletzt bearbeitet:

Aboya

Mitglied
Das is doch derselbe Code oder, also mit if(...==‘a‘), oder? Aso das return ist anders, dann versuchs ich mal, danke
 

fhoffmann

Top Contributor
Du kannst natürlich gerne nochmals nachfragen!
Aber meine Eltern sagten zu mir als Kind immer, wenn ich doofe Fragen stellte: "Selbst denken macht schlau".
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
JG12111989 char-Array in int-Array umwandeln Allgemeine Java-Themen 27
C char und char-Array als parameter übergeben Allgemeine Java-Themen 6
J char-Array löschen Allgemeine Java-Themen 5
F Char-Array nach einem Wort durchsuchen! Allgemeine Java-Themen 11
T JNI String/char-Array Allgemeine Java-Themen 8
R char aus String entfernen Allgemeine Java-Themen 10
Thallius Char +1 wird int? Allgemeine Java-Themen 7
MiMa Illegal char im Dateinamen Allgemeine Java-Themen 14
K Eingabe mit Char vergleichen klappt nicht! Allgemeine Java-Themen 2
J char Allgemeine Java-Themen 3
Thallius Merkwürdiges StringBuilder verhalten (Char Encoding) Allgemeine Java-Themen 6
R Char cannot be derefenrenced? Allgemeine Java-Themen 14
R Bibliothek für Darstellung von char auf 5x7 Dot-Matrix Allgemeine Java-Themen 2
S Char-index aller Buchstaben..? Allgemeine Java-Themen 3
S Klassen Zuorgnung Object-char Allgemeine Java-Themen 2
R Beste Methode: char[] c = new String(b, CHARSET).toCharArray() ? Allgemeine Java-Themen 2
Kr0e Synchronisieren: boolean,byte,char ? Allgemeine Java-Themen 2
E Short in Char? Allgemeine Java-Themen 4
H Vector<Character> zu char[] castern Allgemeine Java-Themen 2
M String[] zu Char[][] mit von toCharArray() Allgemeine Java-Themen 5
G Hex 2 char Allgemeine Java-Themen 2
M BufferedReader.read(char[] cbuf) liefert falsche Werte? Allgemeine Java-Themen 4
T Prüfen, ob Char ein Quantifier ist Allgemeine Java-Themen 6
H int in char umwandeln Allgemeine Java-Themen 7
N problem mit char Allgemeine Java-Themen 6
N Mal wieder char-encoding Probleme Allgemeine Java-Themen 5
T Frage zu char in verbindung mit int Allgemeine Java-Themen 4
B VK_? << durch char rausbekommen Allgemeine Java-Themen 8
M Class.forName und char Allgemeine Java-Themen 10
G Char-zufällig-generieren Allgemeine Java-Themen 11
T MessageDigest von einem char[] berechnen Allgemeine Java-Themen 7
Z Zeichen/char in einer Datei löschen Allgemeine Java-Themen 6
M wie wird aus char eine string kette? Allgemeine Java-Themen 4
A char in String umwandeln Allgemeine Java-Themen 3
L ein char in einem string ersetzen? Allgemeine Java-Themen 5
N char.At gibt Zeichenkette aus. aber leider 2x Allgemeine Java-Themen 10
G Wandeln von Char Wert in Zeichen? Allgemeine Java-Themen 2
U Unicode char kyrillisch Allgemeine Java-Themen 10
C String und char[] / String[] und Vector Allgemeine Java-Themen 21
L char-Zeichen per Konsole einlesen Allgemeine Java-Themen 4
N byte zu Char Allgemeine Java-Themen 1
LucasGlockner Effizienter byte-Zugriff auf ein long[]-Array Allgemeine Java-Themen 8
8u3631984 Frage Performance bei Linked List und Array List Allgemeine Java-Themen 5
M Queue mit einem Array implemetieren Allgemeine Java-Themen 16
M Array Rang eines Elements Allgemeine Java-Themen 4
TheSepp Java bestimmtes Array auf den Wert 0 setzen Allgemeine Java-Themen 32
TheSepp Wie kann man Leerzeichen aus einer Array liste entfernen? Allgemeine Java-Themen 10
B HeapSort für Array of Strings funktioniert nur teilweise Allgemeine Java-Themen 3
noah1407 Array Allgemeine Java-Themen 3
D Methoden Teil-Array mit Maximalwert bestimmen Allgemeine Java-Themen 23
N einem Array Objekte hinzufügen die ihr Array position gespeichert haben Allgemeine Java-Themen 34
N zweidimensionalen Array in dreidimensionalen Array speichern Allgemeine Java-Themen 4
N Schnellste Methode, ein Array durchzugehen? Allgemeine Java-Themen 9
T Objekt Array Aufgabe mit Busdatenbank Allgemeine Java-Themen 2
L Array und Index Allgemeine Java-Themen 26
L die 3 größten Zahlen im Array Allgemeine Java-Themen 1
G jToggleButton in Array/ArrayList Allgemeine Java-Themen 12
S Übergabe eines Sortierkriteriums für ein Artikel Array mittels BiPredicate<Artikel, Artikel> Allgemeine Java-Themen 13
Willi.We Array sortieren Allgemeine Java-Themen 5
gotzi242 Array Summe bestimmen tipps? Allgemeine Java-Themen 14
H Matrix ohne Array erstellen Allgemeine Java-Themen 9
V4ll3.Wff Array in Java Allgemeine Java-Themen 4
Noahscript Aus einem byte Array Steuerungszeichen und Code bekommen und ersetzen Allgemeine Java-Themen 3
H Array Sportschütze Allgemeine Java-Themen 6
Sumo_ow "ArrayIndexOutofBoundsException: 2" Array Problem Allgemeine Java-Themen 6
xGh0st2014 Problem mit Java Array Allgemeine Java-Themen 1
M Array verändern Allgemeine Java-Themen 1
A JavaFX 2 dimensionales array Allgemeine Java-Themen 1
LimDul Direktes return eines Array geht nicht Allgemeine Java-Themen 20
S Array dynamisieren oder ArrayList verwenden? Allgemeine Java-Themen 17
M Java 2D Array für ein Grid erstellen ? Allgemeine Java-Themen 2
H Array mit dem Datentype String[] initializieren Allgemeine Java-Themen 7
L ArrayList mit String Arrays in ein Array umwandeln Allgemeine Java-Themen 1
H Elemente aus ArrayList in Array speichern Allgemeine Java-Themen 8
E Datentypen Wie kann ich die Längen der unterschiedlichen Ebenen aus einem Objekt lesen von dem ich weiß, dass es ein mehrdimensionaler Array ist? Allgemeine Java-Themen 3
N Byte Array in Java "dekomprimieren" Allgemeine Java-Themen 3
parrot Array Aufgabe Allgemeine Java-Themen 3
N String Array Eingabe Allgemeine Java-Themen 6
R Warum wird mir in der Konsole das "Standard Array" ausgegeben? Allgemeine Java-Themen 2
N Variablen Array Länge ändern. Allgemeine Java-Themen 8
D Kgv aller Paare aus einem Array mit n integer berechnen Allgemeine Java-Themen 5
W Enumeration ein Array/List als Eigenschaft mitgeben - warum geht das nicht? Allgemeine Java-Themen 0
kodela Problem mit strukturiertem Array Allgemeine Java-Themen 18
A Array Problem Allgemeine Java-Themen 8
Drachenbauer Wie stelle ich fest, ob ein Objekt in meinem Array vorkommt? Allgemeine Java-Themen 5
F Datei in String-Array einlesen Allgemeine Java-Themen 8
L Objekt aus Objekt-array "löschen" Allgemeine Java-Themen 2
I Array Parameter mit 2 Klassen - NullPointerException Allgemeine Java-Themen 3
X Größten Werte in meinem Array löschen? Allgemeine Java-Themen 16
E Angabe wie groß Array sein soll und in for-schleifen diesen Array füllen Allgemeine Java-Themen 3
F 3 Dimensionales Array mit Allgemeine Java-Themen 9
M Steueralgorithmus verwandelt Array in Anfangszustand Allgemeine Java-Themen 9
W Array vs. ArrayList vs. HashMap Allgemeine Java-Themen 20
D Datentypen 2-3 Baum erstellen mit geordnetem int-array Allgemeine Java-Themen 0
T Objekt in Array packen Allgemeine Java-Themen 6
M Zahlen in Array anordnen Allgemeine Java-Themen 8
M Eclipse Unvollständigen Array ansteuern Allgemeine Java-Themen 2
D Erste Schritte Im Array Werte tauschen Allgemeine Java-Themen 5
Xge For/Array Error: IndexOutOfBounds Allgemeine Java-Themen 4
M Wie kann ich ein int[] Array in einer Methode benutzen? Allgemeine Java-Themen 6

Ähnliche Java Themen

Neue Themen


Oben