Announcement

Collapse
No announcement yet.

Algorithmus: jeder gegen jeden

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Algorithmus: jeder gegen jeden

    Hallo zusammen,

    ich grüble an einem Algorithmus, der folgendes machen soll:
    Es ist ein Spielplan, bei dem zu Beginn die Anzahl der teilnehmenden Teams und die Namen der Teams eingegeben werden.
    Dann werden die Teams in z.B 2 Gruppen eingeteilt.

    Jetzt sollen die Teams in einer Gruppe Jeder gegen Jeden spielen.

    Bei z.B. 3 Teams pro Gruppe werden also 3 Spiele gespielt => (n*(n-1))/2 .
    Team 1 - Team 2
    Team 1 - Team 3
    Team 2 - Team 3

    Ich komme aber einfach nicht drauf, wie der Algorithmus dazu aussehen muss. Kann mir vielleicht jemand helfen??

    Danke schön schon mal

  • #2
    Hallo,

    die Daten der Spieler werden sicherlich in einer Datenbank gespeichert. Wenn eine SQL-Datenbank verwendet wird, liefert ein kartesisches Produkt (d.h. ein JOIN) das gewünschte Ergebnis inklusive Rückrunde zurück. Im Fall des MS SQL Server könnte das so aussehen:

    Code:
    USE tempdb
    GO
    CREATE TABLE dbo.TestTbl
    (
      id       INT        NOT NULL IDENTITY PRIMARY KEY,
      spieler  VARCHAR(9) NULL
    )
    GO
    INSERT INTO dbo.TestTbl (spieler) VALUES ('a');
    INSERT INTO dbo.TestTbl (spieler) VALUES ('b');
    INSERT INTO dbo.TestTbl (spieler) VALUES ('c');
    GO
    
    SELECT a.spieler,b.spieler
    FROM dbo.TestTbl a, dbo.TestTbl b
    WHERE a.spieler <> b.spieler
    GO

    Comment

    Working...
    X