Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Java - Algorytm Johnsona szeregowanie zadań

Leewang 21 Gru 2012 16:57 1767 0
  • #1 21 Gru 2012 16:57
    Leewang
    Poziom 15  

    Witam serdecznie,

    Piszę do Was z prośbą, co do wymyślenia jak zadeklarować poprawnie zmienne, żeby później nie mieć problemu z napisaniem programu.

    Chodzi o algorytm Johnsona i szeregowanie zadań.

    Potrzebuje znać numery zadań i ich czasy wykonywania na poszczególnych maszynach.

    Cały algorytm ma wyglądać mniej więcej tak (przykład pożyczony z innej strony):

    Z P1 P2
    1 3 4
    2 2 5
    3 5 1
    4 4 2
    5 3 2

    1. Podzielenie zadań na dwie grupy. W pierwszej powinny się znaleźć te zadania, dla których czas wykonywania na pierwszej maszynie nie jest dłuższy, niż czas wyknywania na drugiej maszynie. W drugiej grupie - wszystkie pozostałe.

    2. Szeregujemy zadania z pierwszej grupy w taki sposób, aby najpierw były wykonywane te zadania, które mają mniejsze czasy na pierwszej maszynie.

    3. Zadania z drugiej grupy szeregujemy w taki sposób, aby najpierw były wykonywane te zadania, które mają większe czasy na drugiej maszynie.

    Ja zrealizowałem to tak :

    Kod: java
    Zaloguj się, aby zobaczyć kod


    Później uszeregowałem zadania i otrzymałem coś takiego: 2 3 4 4 2 - czyli jednostki czasu jakie powinny zajmować zadania na pierwszym procesorze, brakuje mi niestety oznaczeń numerów zadań, na skutek czego nie mogę dopasować zadań do drugiego procesora.

    Może ktoś z Was podpowie mi jak prawidłowo przyjąć zmienne i oznaczenia? Czy użyć tablicy dwuwymiarowej?

    Pozdrawiam

    PS.

    Zrobiłem to zadanie na takich zmiennych:
    Kod: java
    Zaloguj się, aby zobaczyć kod


    w wyniku otrzymuje juz numer zadania i czasy dla pierwszego procesora, potrzebuje jeszcze dla drugiego. Teraz tablice wyglądają tak:
    Kod: java
    Zaloguj się, aby zobaczyć kod


    Wiecie może jak zrobić żeby uporządkować p2 względem pierwszego indexu gr1? tzn żeby p2 wyglądała tak:
    Kod: java
    Zaloguj się, aby zobaczyć kod

    0 0