Ασκήσεις στην python: Γραμμική αναζήτηση και Ταξινόμηση με διάφορα κριτήρια

Γενική οδηγία:

Αποθηκεύστε τα αρχεία που σας δίνονται στον υπολογιστή σας και χρησιμοποιώντας την υλοποίηση της python που προτιμάτε απαντήστε στην ερώτηση.

Γραμμική Αναζήτηση

  • Φτιάξτε μια συνάρτηση η οποία να δέχεται ως όρισμα μια λίστα με στοιχεία tuples με 2 όρους, που αντιστοιχούν στις συντεταγμένες ενός σημείου στο επίπεδο. Η συνάρτηση θα επιστρέφει τη θέση του στοιχείου για το οποίο το άθροισμα των όρων κατά απόλυτο τιμή είναι το μικρότερο. Δηλ. αν η L=[(1,-1),(1,1),(0,-1),(0.4,-0.5)] θα επιστρέψει τη θέση 3. Sort6-min-point.py
    	
  • Φτιάξτε μια συνάρτηση η οποία να δέχεται ως όρισμα το όνομα ένος αρχείου και διαβάζει τις γραμμές του αρχείου που αποτελείται από δυο στήλες με αριθμούς. Η πρώτη στήλη περιέχει τιμές στο διάστημα [0,1] και η δεύτερη τις τιμές μιας συνάρτησης στα αντίστοιχα σημεία της πρώτης στήλης. Π.χ. Sort6-file-data.txt
    	
    Η συνάρτηση πρέπει να επιστρέφει ένα tuple με τον αριθμό της γραμμής που βρίσκεται η μεγαλύτερη κατά απόλυτο τιμή της συνάρτησης, το σημείο του [0,1] και την τιμή της συνάρτησης σε αυτό το σημείο. Sort6-file-max.py
    	
  • Ταξινόμηση

  • Φτιάξτε μια συνάρτηση που να δέχεται ως όρισμα μια λίστα με ονοματεπώνυμα μη ταξινομημένη και να επιστρέφει τη λίστα ταξινομημένη με αλφαβητική σειρά ως προς το επώνυμο. Κάθε ονοματεπώνυμο αποτελείται από το όνομα (πρώτα) και μετά από το επώνυμο, τα οποία χωρίζουν με ένα κενό. Χρησιμοποιήστε την ταξινόμηση με επιλογή (selection sort). Π.χ. L=['Mata Hari', 'James Bond', 'Benny Hill', 'Phantom Duck'] Sort6-sort-names.py
    	
  • Φτιάξτε μια συνάρτηση η οποία να δέχεται ως όρισμα το όνομα ένος αρχείου και διαβάζει τις γραμμές του αρχείου που αποτελείται ονοματεπώνυμα, ένα σε κάθε γραμμή. Η συνάρτηση θα πρέπει να δημιουργεί ένα νέο αρχείο το οποίο θα περιέχει τα ονόματα ταξινομημένα με αλφαβητική σειρά ως προς το επώνυμο. Κάθε ονοματεπώνυμο αποτελείται από το όνομα (πρώτα) και μετά από το επώνυμο, τα οποία χωρίζουν με ένα κενό. Χρησιμοποιήστε την ταξινόμηση με εισαγωγή (insertion sort). (Παράδειγμα text file: Sort6-file-names.txt) Sort6-file-names.py