Μάθημα : Προγραμματισμός Υπολογιστών Γ' ετος 2025-2026
Κωδικός : 4540050176
-
Εμφάνιση όλων των ενοτήτων
-
3.2 Αριθμητικές και λογικές πράξεις, εκφράσεις και μεταβλητές (Ασκήσεις με έκπτωση και ΦΠΑ )
-
3.3 Βασικές Ενσωματωμένες συναρτήσεις
-
4.1.2 Δομή επιλογής if
-
4.1.3 Δομή επανάληψης (For-While)
-
4.1.4 For ή While
-
4.2 Συναρτήσεις
-
8.1 Συμβολοσειρές (strings)
-
Λίστες
-
5.1 Δυαδική αναζητηση 5.2 Ταξινόμηση ανταλλαγής (bubble sort)
-
8.3 Στοίβα
-
8.4 Ουρά
-
7.3 Αρθρωματα (Modules)
-
7.3.2 Σύντομη περιγραφή της Πρότυπης βιβλιοθήκης (Standard Library)
-
7.3.3 Πακέτα (Packages)
-
6.Αρχεία
-
11.Αντικειμενοστραφής Προγραμματισμός
-
3.2 Αριθμητικές και λογικές πράξεις, εκφράσεις και μεταβλητές (Ασκήσεις με έκπτωση και ΦΠΑ )
8.4 Ουρά
Μια δομή δεδομένων που χρησιμοποιείται για την μοντελοποίηση και προσομοίωση πραγματικών φαινομένων, είναι η δομή της ουράς. Τα φαινόμενα πουμοντελοποιούνται αναφέρονται στην εξυπηρέτηση ανθρώπων, αντικειμένων ή προγραμμάτων. Τέτοια παραδείγματα ουρών είναι:
● Οι ουρές στις τράπεζες και τα σούπερ-μάρκετ.
● Η ουρά των προγραμμάτων που περιμένουν να εξυπηρετηθούν από τον επεξεργαστή του υπολογιστή σας.
● Η ουρά των αιτήσεων προς το διακομιστή ιστού (web server) ενός δικτυακού τόπου.
Σε αντίθεση με τη στοίβα, που η λειτουργία της χαρακτηρίζεται ως LIFO (Last In First Out), η λειτουργία της ουράς είναι γνωστή στη βιβλιογραφία ως FIFO (First In First Out), αφού το κάθε στοιχείο της ουράς εξυπηρετείται με τη σειρά που έφτασε στην ουρά
Δύο είναι οι βασικές λειτουργίες μιας ουράς:
● Εισαγωγή στοιχείου, η οποία γίνεται στο πίσω μέρος της ουράς.
● Εξαγωγή στοιχείου, η οποία γίνεται από το εμπρός μέρος της ουράς.
Οι βασικές λειτουργίες που πρέπει να υποστηρίζει η υλοποίηση μιας ουράς είναι:
● Δημιουργία μιας κενής ουράς.
● Έλεγχος, αν η ουρά είναι κενή.
● Εισαγωγή στοιχείου.
● Εξαγωγή στοιχείου.
def enqueue(q,item):
q.append(item)
def dequeue(q):
return q.pop(0)
def isEmpty(q):
return len(q) == 0
def createQueue():
return []
Δημιουργία ουράς
def enqueue(queue,i):
queue.append(i)
def dequeue(queue):
return queue.pop(0)
def isempty(queue):
return len(queue)==0
def createqueue():
return []
q=createqueue()
number=int(raw_input( 'dose stoixe;io'))
while number!=0:
enqueue(q,number)
print q
number=int(raw_input('dose stoixeio'))
print q
while not isempty(q):
number=dequeue(q)
print number
print q