Πώς να εφαρμόσετε το Bubble Sort στο Python;



Σε αυτό το ιστολόγιο, θα μάθετε τον κώδικα και την εξήγηση της ταξινόμησης μιας λίστας Python χρησιμοποιώντας την ταξινόμηση φυσαλίδων χρησιμοποιώντας τη μέθοδο ανταλλαγής.

Ταξινόμηση σημαίνει τακτοποίηση οποιωνδήποτε δεδομένων με αυξανόμενη ή φθίνουσα σειρά σύμφωνα με κάποια γραμμική σχέση μεταξύ των στοιχείων. Αυτό το άρθρο σχετικά με το Bubble Sort in θα σας βοηθήσει να κατανοήσετε λεπτομερώς αυτήν την ιδέα.

Θα καλύψουμε τα παρακάτω θέματα σε αυτό το ιστολόγιο:





Τι είναι το Bubble Sort;

Το είδος φούσκας είναι επίσης γνωστό ως είδος βύθισης. Είναι ένας απλός αλγόριθμος ταξινόμησης που διαρκώς διασχίζει τη λίστα προς ταξινόμηση, συγκρίνοντας κάθε ζεύγος γειτονικών στοιχείων και ανταλλάσσοντάς τα εάν δεν είναι στη σωστή σειρά. Τα βήματα επαναλαμβάνονται έως ότου δεν χρειάζονται πλέον ανταλλαγές, δηλαδή όταν ταξινομηθεί η λίστα.

Βήματα για την εκτέλεση ενός Bubble Sort

  • Συγκρίνετε το πρώτο και το δεύτερο στοιχείο στη λίστα και ανταλλάξτε εάν είναι σε λάθος σειρά.
  • Συγκρίνετε το δεύτερο και το τρίτο στοιχείο και ανταλλάξτε τα εάν είναι σε λάθος σειρά.
  • Προχωρήστε παρόμοια μέχρι το τελευταίο στοιχείο της λίστας με παρόμοιο τρόπο.
  • Συνεχίστε να επαναλαμβάνετε όλα τα παραπάνω βήματα έως ότου ταξινομηθεί η λίστα.

Τα παραπάνω βήματα θα είναι πιο ξεκάθαρα με τις ακόλουθες απεικονίσεις -



Φυσαλίδα στο Python - Edureka

java διαφορά μεταξύ εργαλείων και επεκτείνεται



Αλγόριθμος ταξινόμησης φυσαλίδων

Τώρα ας δούμε τον Αλγόριθμο πίσω από το Bubble Sort.

Πρώτο πέρασμα:

( 16.19 , 11,15,10) -> ( 16.19 , 11,15,10) - Ο αλγόριθμος συγκρίνει τα πρώτα δύο στοιχεία και ανταλλαγές από το 19> 16

(16, 19.11 , 15.10) -> (16, 11.19 , 15.10) - Ανταλλαγή από 19> 11

(16.11, 19.15 10) -> (16,11, 15.19 , 10) - Ανταλλαγή από 19> 15

ερωτήσεις συνέντευξης cloud service salesforce

(16,11,15, 19.10 ) -> (16,11,15, 10.19 ) - Τώρα, επειδή αυτά τα στοιχεία είναι ήδη στη σωστή σειρά (19> 10), ο αλγόριθμος δεν τα ανταλλάσσει.

Δεύτερο πέρασμα:

( 16.11 , 15,10,19) -> ( 11.16 , 15,10,19) - Ανταλλαγή από 16> 11

( έντεκα, 16.15 , 10.19) -> (11, 15.16 , 10,19) - Ανταλλαγή από 16> 15

(11.15, 16.10 , 19) -> (11,15, 10.16 , 19) - Ανταλλαγή από 16> 10

(11,15,10,16,19) -> (11,15,10,16,19)

ο είναι ταξινομημένο, αλλά ο άλγκος μας δεν γνωρίζει εάν έχει ολοκληρωθεί. Ως εκ τούτου, χρειάζεται άλλο ολόκληρο πέρασμα χωρίς ανταλλαγή για να γνωρίζει ότι έχει ταξινομηθεί.

Τρίτο πέρασμα:

( έντεκα, 15.10 , 16,19) -> (11, 15.10 , 16,19)

( έντεκα, 15.10 , 16,19) -> (11, 10.15 , 16,19) - Ανταλλαγή από 15> 10

(11,10,15,16,19) -> (11,10,15,16,19)

(11,10,15,16,19) -> (11,10,15,16,19)

ποια είναι η διαφορά μεταξύ hashtable και hashmap

Τέταρτο πέρασμα:

( 11.10 , 15,16,19) -> ( 10.11 , 15,16,19) - Ανταλλαγή από 11> 10

Η τελική έξοδος είναι (10,11,15,16,19)

Ας το κωδικοποιήσουμε τώρα -

Πρόγραμμα Python για την εφαρμογή Bubble Sort

a = [16, 19, 11, 15, 10, 12, 14]

#repeating loop len (a) (αριθμός στοιχείων) πόσες φορές για j στο εύρος (len (a)): # αρχικά ανταλλαγή είναι false swapped = False i = 0 ενώ ia [i + 1]: # swapping a [i ], a [i + 1] = a [i + 1], a [i] # Αλλαγή της τιμής της ανταλλαγής ανταλλαγής = True i = i + 1 # αν η ανταλλαγή είναι λανθασμένη τότε η λίστα ταξινομείται # μπορούμε να σταματήσουμε το βρόχο εάν ανταλλάσσεται == Λάθος: διακοπή εκτύπωσης (α)
 ΠΑΡΑΓΩΓΗ: 


Στον παραπάνω κώδικα, συγκρίνουμε τους παρακείμενους αριθμούς και τους ανταλλάσσουμε εάν δεν είναι στη σωστή σειρά. Επαναλάβετε την ίδια διαδικασία len (a) πολλές φορές. Έχουμε εκχωρήσει μια μεταβλητή «swapped» και την καθιστήσαμε «True» εάν άλλα δύο στοιχεία ανταλλάσσονται σε επανάληψη. Και αν δεν υπάρχει ανταλλαγή στοιχείων, τότε η λίστα είναι ήδη ταξινομημένη και ως εκ τούτου, δεν υπάρχει αλλαγή στην τιμή του «swapped» και μπορούμε να σπάσουμε το βρόχο.

Με αυτό, φτάνουμε στο τέλος του ιστολογίου με τίτλο «Πώς να εφαρμόσετε το Bubble Sort στο Python». Ελπίζω ότι η προστιθέμενη αξία του περιεχομένου στις γνώσεις σας για το Python.

Βεβαιωθείτε ότι εξασκείστε όσο το δυνατόν περισσότερο και επαναφέρετε την εμπειρία σας.

Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων αυτού του ιστολογίου 'Πώς να εφαρμόσετε το Bubble Sort in Python' και θα επικοινωνήσουμε μαζί σας το συντομότερο δυνατό.

Για να μάθετε σε βάθος την Python μαζί με τις διάφορες εφαρμογές της, μπορείτε να εγγραφείτε ζωντανά με υποστήριξη 24/7 και πρόσβαση σε όλη τη διάρκεια ζωής.