www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Algorithmen und Datenstrukturen" - Laufzeitkomplexität
Laufzeitkomplexität < Algor.+Datenstr. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Algorithmen und Datenstrukturen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Laufzeitkomplexität: Naive Suche
Status: (Frage) überfällig Status 
Datum: 19:28 Mo 11.06.2012
Autor: bandchef

Aufgabe
Zeigen Sie, dass der Algorithmus NaiveSearch im Average Case Laufzeit [mm] $\Theta(n)$ [/mm] hat. Nehmen
Sie hierzu an, dass sowohl der Text der Länge n als auch das Muster der Länge m zufällig
und gleichverteilt aus einem Alphabet mit [mm] $|\Sigma| \geq [/mm] 2$ Buchstaben gewählt werden. Die Aussage
folgt sofort, wenn Sie zeigen, dass die erwartete Anzahl an Buchstaben-Vergleichen durch
folgende Formel gegeben ist:


$(n-m+1) [mm] \cdot \frac{1-|\Sigma|^{-m}}{1-|\Sigma|^{-1}} \leq [/mm] 2(n-m+1) = [mm] \Theta(n)$ [/mm]



Hi Leute!

Wie die Aufgabe sagt, soll ich ja durch Umformung dieses Terms die gegebene Laufzeitkomplexität einer naiven Suche verifizieren. Ich hab dann mal soweit es mir möglich umgeformt:

$(n-m+1) [mm] \cdot \frac{1-|\Sigma|^{-m}}{1-|\Sigma|^{-1}} \leq [/mm] 2(n-m+1) = [mm] \Theta(n)$ [/mm]

An dieser Stelle bringe $(n-m+1)$ auf die andere Seite. Ich denke man muss Ungleichheitszeichen nicht drehen, da der zu dividierende Teil nicht kleiner 0 wird. So wie ich die Angabe jedenfalls verstanden habe.

[mm] $\Leftrightarrow \frac{1-|\Sigma|^{-m}}{1-|\Sigma|^{-1}} \leq [/mm] 2 = [mm] \Theta(n)$ [/mm]

Allerdings weiß ich nun an dieser Stelle nicht mehr weiter, weil ich nicht weiß, wie ich nun mit [mm] $1-|\Sigma|^{-1}$ [/mm] im Zähler des Bruches umgehen soll... Ich mein da ist ja ein Alphabet gegeben und keine algebraische Variable!


Könnt ihr mir helfen?

        
Bezug
Laufzeitkomplexität: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 20:20 Mi 13.06.2012
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
        
Bezug
Laufzeitkomplexität: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 09:36 Mo 18.06.2012
Autor: felixf

Moin!

> Zeigen Sie, dass der Algorithmus NaiveSearch im Average
> Case Laufzeit [mm]\Theta(n)[/mm] hat. Nehmen
>  Sie hierzu an, dass sowohl der Text der Länge n als auch
> das Muster der Länge m zufällig
>  und gleichverteilt aus einem Alphabet mit [mm]|\Sigma| \geq 2[/mm]
> Buchstaben gewählt werden. Die Aussage
>  folgt sofort, wenn Sie zeigen, dass die erwartete Anzahl
> an Buchstaben-Vergleichen durch
>  folgende Formel gegeben ist:
>  
>
> [mm](n-m+1) \cdot \frac{1-|\Sigma|^{-m}}{1-|\Sigma|^{-1}} \leq 2(n-m+1) = \Theta(n)[/mm]
>  
>
> Hi Leute!
>  
> Wie die Aufgabe sagt, soll ich ja durch Umformung dieses
> Terms die gegebene Laufzeitkomplexität einer naiven Suche
> verifizieren. Ich hab dann mal soweit es mir möglich
> umgeformt:
>  
> [mm](n-m+1) \cdot \frac{1-|\Sigma|^{-m}}{1-|\Sigma|^{-1}} \leq 2(n-m+1) = \Theta(n)[/mm]
>  
> An dieser Stelle bringe [mm](n-m+1)[/mm] auf die andere Seite. Ich
> denke man muss Ungleichheitszeichen nicht drehen, da der zu

Du hast hier etwas falsch verstanden!

Du sollst zeigen, dass die erwartete Anzahl an Buchstaben-Vergleichen durch den Ausdruck $(n-m+1) [mm] \cdot \frac{1-|\Sigma|^{-m}}{1-|\Sigma|^{-1}}$ [/mm] gegeben ist.

Dieser wird dann in der Aufgabenstellung abgeschaetzt, um zu zeigen, dass dieser in $O(n)$ liegt -- was dir die eine Haelfte des Endresultats der Aufgabe liefert.

Um das zu bekommen musst du jedoch erstmal den Ausdruck beweisen. Die Abschaetzung ist ein sehr einfacher Schritt im Vergleich dazu.

LG Felix


Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Algorithmen und Datenstrukturen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]