Guten Tag,
ich sitze hier schon seit ein paar Tagen vor einem Problem. Hier mal die genaue Fragestellung die wir beantworten sollen:
Schreiben Sie eine effiziente Methode, die die Länge der längsten Sequenz von
Leerzeichen in einem gegebenen String sucht und dabei möglichst wenig Zeichen im
String untersucht (Hinweis: Das Programm sollte schneller werden, wenn die Länge
der Sequenz von Leerzeichen zunimmt). Geben Sie außerdem die Zahl der
benötigten Vergleiche aus.
Nun hab ich zu unseren Tutors gesagt das man durch den ganzen String wandern muss und er meinte Brauch man das wirklich?
Denn wenn ich ein String hab mit 10 Wörtern und 3 Leerzeichen am ende dann soll die Methode schneller werden wenn ich wieder 10 Wörter habe und 100 Leerzeichen am Ende doch wie soll das gehen ohne durch den ganzen String zu wandern?
Ihn aufzuteilen wie bei Binärersuche ist auch eher Fragwürdig denn dann könnte der Worst-Case passieren und man Teilt an der längsten stelle der Leerzeichen etc.!!! Also auch eher Fragwürdig.
Nun bin ich einfach hin gegangen und benutze die Klasse StringTokenizer doch durch das einfügen von Leerzeichen wird die Methode ja nicht schneller sondern es kommt ja nur auf die Anzahl der Worte im String an.
Hat da jemand eine Idee? Ich stehe auf dem Schlauch
LG
ich sitze hier schon seit ein paar Tagen vor einem Problem. Hier mal die genaue Fragestellung die wir beantworten sollen:
Schreiben Sie eine effiziente Methode, die die Länge der längsten Sequenz von
Leerzeichen in einem gegebenen String sucht und dabei möglichst wenig Zeichen im
String untersucht (Hinweis: Das Programm sollte schneller werden, wenn die Länge
der Sequenz von Leerzeichen zunimmt). Geben Sie außerdem die Zahl der
benötigten Vergleiche aus.
Nun hab ich zu unseren Tutors gesagt das man durch den ganzen String wandern muss und er meinte Brauch man das wirklich?
Denn wenn ich ein String hab mit 10 Wörtern und 3 Leerzeichen am ende dann soll die Methode schneller werden wenn ich wieder 10 Wörter habe und 100 Leerzeichen am Ende doch wie soll das gehen ohne durch den ganzen String zu wandern?
Ihn aufzuteilen wie bei Binärersuche ist auch eher Fragwürdig denn dann könnte der Worst-Case passieren und man Teilt an der längsten stelle der Leerzeichen etc.!!! Also auch eher Fragwürdig.
Nun bin ich einfach hin gegangen und benutze die Klasse StringTokenizer doch durch das einfügen von Leerzeichen wird die Methode ja nicht schneller sondern es kommt ja nur auf die Anzahl der Worte im String an.
Hat da jemand eine Idee? Ich stehe auf dem Schlauch
LG