Αναζήτηση – Ταξινόμηση λιστών

 

  1. Να γράψετε τη συνάρτηση selectionSort. Στη συνέχεια αφού δημιουργήσετε τη λίστα L=[12,3,45,-3,4,67,20] να την ταξινομήσετε (με αύξουσα ταξινόμηση) χρησιμοποιώντας την παραπάνω συνάρτηση και να την εμφανίσετε στην οθόνη του υπολογιστή. (ask1fpy)
  2. Να γράψετε τη συνάρτηση selectionSort. Στη συνέχεια αφού δημιουργήσετε τη λίστα L=[‘jim’,’sam’,’jack’,’john’,’nick’] να την ταξινομήσετε (με αύξουσα ταξινόμηση) χρησιμοποιώντας την παραπάνω συνάρτηση και να την εμφανίσετε στην οθόνη του υπολογιστή. (ask2fpy)
  3. Να γράψετε πρόγραμμα σε python το οποίο να διαβάζει 10 αριθμούς από το πληκτρολόγιο και να τους τοποθετεί σε μία λίστα Α. Στη συνέχεια, να τους εμφανίζει στην οθόνη του υπολογιστή με αύξουσα σειρά (ask3fpy)
  4. Να γράψετε πρόγραμμα σε python το οποίο να διαβάζει 10 βαθμούς από το πληκτρολόγιο και να τους τοποθετεί σε μία λίστα ΒΑ. Στη συνέχεια, χρησιμοποιώντας τη συνάρτηση selectionSort να βρίσκει και να εμφανίζει τον μεγαλύτερο και τον μικρότερο βαθμό. (ask4fpy)
  5. Να γράψετε πρόγραμμα σε python το οποίο να διαβάζει το βάρος 10 τσουβαλιών από το πληκτρολόγιο και να τα τοποθετεί σε μία λίστα Τ. Στη συνέχεια, να βρίσκει τα 3 μεγαλύτερα βάρη (θεωρώντας ότι είναι μοναδικά).(ask5fpy)
  6. Να γράψετε πρόγραμμα σε python το οποίο να διαβάζει αριθμούς από το πληκτρολόγιο μέχρι να δοθεί ο αριθμός 0 και να τους τοποθετεί σε μία λίστα L. Στη συνέχεια, να την ταξινομήσετε (με αύξουσα ταξινόμηση) χρησιμοποιώντας την συνάρτηση selectionSort και να την εμφανίσετε στην οθόνη του υπολογιστή (ask6fpy)
  7. Να αλλάξετε τη συνάρτηση selectionSort ώστε να ταξινομεί με φθίνουσα σειρά μία λίστα. Στη συνέχεια, να γράψετε πρόγραμμα σε python το οποίο να διαβάζει μισθούς μέχρι να δοθεί μισθός αρνητικός από το πληκτρολόγιο και να τους τοποθετεί σε μία λίστα MIS. Στη συνέχεια, να τους εμφανίζει στην οθόνη του υπολογιστή με φθίνουσα σειρά (χρησιμοποιώντας τη νέα συνάρτηση )(ask7fpy)
  8. Να γράψετε τη συνάρτηση σειριακής αναζήτησης. Στη συνέχεια να γράψετε πρόγραμμα σε python το οποίο να διαβάζει βάρη μέχρι να δοθεί βάρος αρνητικό από το πληκτρολόγιο και να τα τοποθετεί σε μία λίστα BA. Χρησιμοποιώντας την παραπάνω συνάρτηση να εμφανίζει τα κατάλληλα μηνύματα για το αν υπάρχει ή όχι βάρος 10 κιλών μέσα στη λίστα μας.(ask8f20.py)

 

#Αλγόριθμος Ταξινόμησης με Επιλογή

def posMin( start, size, array ) :

pos = start

for i in range(start, size) :

if array[ i ] < array[ pos ] :

pos = i

return pos

def selectionSort( array ) :

N = len( array )

for i in range(0, N) :

pos = posMin( i, N, array)

array[i], array[pos] = array[pos], array[i]

_____________________________________________

#Αλγόριθμος Σειριακής Αναζήτησης

def linearSearch(array, key):

found = False

for item in array :

if item == key :

found = True

return found

____________________________________________________

#Αλγόριθμος Σειριακής Αναζήτησης που επιστρέφει τη θέση του στοιχείου ή αν δεν υπάρχει -1

           

              def linearSearch(array,key):

                          pos=-1

                          N=len(array)-1

                          i=0

                          while i<=N and pos<0:

                                      if array[i]==key:

                                                  pos=i

                                      i=i+1

                          return pos

 

2 Απόψεις για το “ΒΠ ΦΥΛΛΑΔΙΟ ΑΣΚΗΣΕΩΝ 20”

  1. Αναστασία

    Η σειριακή αναζήτηση δεν θα έπρεπε να ξεκινά από το μηδέν αφού το πρώτο στοιχείο βρίσκεται στη θέση μηδέν;
    δηλαδή το i να αρχικοποιείται με μηδέν;;
    i=0

    1. hathan

      Έχετε δίκιο. Σας ευχαριστώ πολύ για τη διόρθωση, το άλλαξα.

Αφήστε σχόλιο

Αυτός ο ιστότοπος χρησιμοποιεί το Akismet για να μειώσει τα ανεπιθύμητα σχόλια. Μάθετε πώς υφίστανται επεξεργασία τα δεδομένα των σχολίων σας.