www.vorkurse.de
Ein Projekt von vorhilfe.de
Die Online-Kurse der Vorhilfe

E-Learning leicht gemacht.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Teams · Forum · Wissen · Kurse · Impressum
Forenbaum
^ Forenbaum
Status Mathe-Vorkurse
  Status Organisatorisches
  Status Schule
    Status Wiederholung Algebra
    Status Einführung Analysis
    Status Einführung Analytisc
    Status VK 21: Mathematik 6.
    Status VK 37: Kurvendiskussionen
    Status VK Abivorbereitungen
  Status Universität
    Status Lerngruppe LinAlg
    Status VK 13 Analysis I FH
    Status Algebra 2006
    Status VK 22: Algebra 2007
    Status GruMiHH 06
    Status VK 58: Algebra 1
    Status VK 59: Lineare Algebra
    Status VK 60: Analysis
    Status Wahrscheinlichkeitst

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 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" - Allg. Laufzeitformel
Allg. Laufzeitformel < Algor.+Datenstr. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Algorithmen und Datenstrukturen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Allg. Laufzeitformel: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 14:36 Fr 02.02.2007
Autor: carlito83

Aufgabe
Geben Sie eine allgemeine Formel für die Laufzeit an.

for(int i=1;i<=n;i++)
{
    for(int j=1;j<i;j+=2)
   {
      var++;
   }
}

Hi, vllt. könnt ihr mir ja gerade helfen.

Hier meine Frage wie bekomme ich das j+=2 auf der in inneren For Schleifen in mein Summenzeichen.

[mm] \summe_{i=1}^{n}( \summe_{j=1}^{i} [/mm] ?)

Danke schonmal und für Tipps wie es dann weiter geht bin ich auch noch offen^^

MFG

        
Bezug
Allg. Laufzeitformel: Antwort
Status: (Antwort) fertig Status 
Datum: 15:39 Fr 02.02.2007
Autor: Karl_Pech

Hallo carlito83,


> Geben Sie eine allgemeine Formel für die Laufzeit an.
>  
> for(int i=1;i<=n;i++)
>  {
>      for(int j=1;j<i;j+=2)
>     {
>        var++;
>     }
>  }
>
> wie bekomme ich das j+=2 auf der in
> inneren For Schleifen in mein Summenzeichen.
>  
> [mm]\summe_{i=1}^{n}( \summe_{j=1}^{i}[/mm] ?)


Also die innere Summe sollte bis [mm]i-1[/mm] laufen und nicht bis [mm]i[/mm]. Die innere Schleife zählt hier im Schleifenkopf alle ungeraden Zahlen zwischen [mm]1[/mm] und [mm]i-1[/mm] auf. Das Problem ist, daß [mm]i-1[/mm] hier gerade und im nächsten Schritt wieder ungerade sein kann. Aber die Gauß-Klammer (nach oben runden) sollte hier helfen. Damit wird die innere Schleife [mm]\left\lceil\tfrac{i-1}{2}\right\rceil[/mm] mal aufgerufen, weil ungefähr die Hälfte der natürlichen Zahlen zwischen [mm]1[/mm] und [mm]i-1[/mm] (un)gerade Zahlen sind.
Um dann weiter mit diesem Term die äußere Summe aufzulösen, mußt du - denke ich mal - eine Fallunterscheidung: "[mm]i[/mm] (un)gerade" machen, um dann die entgültige exakte Laufzeit zu bekommen, oder aber du nimmst später die [mm]\mathcal{O}\texttt{-Notation}[/mm] und gehst deswegen vom schlechteren Fall aus, daß nach oben gerundet wird.



Viele Grüße
Karl




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


^ Seitenanfang ^
www.vorkurse.de
[ Startseite | Mitglieder | Teams | Forum | Wissen | Kurse | Impressum ]