53 |
9 4
3.5
Εισαγωγή των στοιχείων σε τμήματα
Η εισαγωγή των στοιχείων σε τμήματα γίνεται με έναν αλγόριθμο ελάχιστων
αλμάτων. Εδώ να επισημάνουμε πως γνωρίζουμε για κάθε στοιχείο αν είναι στοιχείο εισόδου,
ενδιάμεσο ή στοιχείο εξόδου. Στοιχείο εισόδου σημαίνει ότι έχει μόνο output pins, ενδιάμεσο
σημαίνει ότι έχει και input και output pins ενώ τα εξόδου έχουν μόνο input pins.
Ξεκινάμε με τα στοιχεία εισόδου και τα τοποθετούμε όλα στο πρώτο group. Τα
στοιχεία εισόδου βρίσκονται στον αριθμό αλμάτων μηδέν. Έπειτα για κάθε ένα από αυτά
βλέπουμε με ποιο στοιχείο συνδέεται και αν δεν έχει ήδη εισαχθεί σε κάποιο άλλο τμήμα τότε
το τοποθετούμε στο επόμενο τμήμα (βλέπε
). Εδώ αξίζει να τονίσουμε πως αν
ένα στοιχείο μπορεί να βρεθεί με περισσότερους τρόπους αλμάτων τότε θα προτιμηθεί ο
ελάχιστος αριθμός αλμάτων.
//put objects in groups, 0 hops (inputs) - 1 hop...
Groups add all_inputs
Foreach element in Group
Get_connections
If connected_element_is_not_inserted
Insert_it_in_NewGroup
Ψευδοκώδικας 1: Εισαγωγή των στοιχείων σε τμήματα