0% found this document useful (0 votes)
7 views3 pages

Sorting

The document explains the bubble sort algorithm, which sorts a list of numbers by repeatedly swapping adjacent out-of-order pairs. It includes a mechanism to stop early if no swaps occur, indicating the list is already sorted. Additionally, it provides a usage example where a user inputs a list of numbers and receives the sorted output.

Uploaded by

researchblend
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views3 pages

Sorting

The document explains the bubble sort algorithm, which sorts a list of numbers by repeatedly swapping adjacent out-of-order pairs. It includes a mechanism to stop early if no swaps occur, indicating the list is already sorted. Additionally, it provides a usage example where a user inputs a list of numbers and receives the sorted output.

Uploaded by

researchblend
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

BINARY SEARCH BUBBLE SORT QUICK SORT

Step-by-Step Explanation

1. Function Setup:

python

Copy code

def bubble_sort(alist):

The function bubble_sort takes in a list (alist) of numbers that we want to sort.

2. Looping through the List (Outer Loop):

python

Copy code

for i in range(len(alist) - 1, 0, -1):

This outer loop runs multiple times, each time making one less comparison than before. For
example, if there are 5 items, it will check all 5 items in the first pass, 4 in the next, and so on. Each
pass moves the biggest unsorted number to the end of the list.

3. Keeping Track of Whether We Made a Swap:

python

Copy code

no_swap = True

This variable, no_swap, starts as True at the beginning of each pass. If no swaps are needed during a
pass, this will stay True, and we know the list is already sorted, so we can stop early.

4. Comparing Numbers (Inner Loop):

python

Copy code

for j in range(0, i):

if alist[j + 1] < alist[j]:

alist[j], alist[j + 1] = alist[j + 1], alist[j]

no_swap = False

This inner loop checks pairs of numbers next to each other. If a number on the left is bigger than the
one on the right, it swaps them. After a swap, no_swap is set to False to show that the list wasn't
sorted yet.

5. Checking If We Can Stop Early:

python

Copy code

if no_swap:
BINARY SEARCH BUBBLE SORT QUICK SORT

return

If no swaps happened in a pass (meaning no_swap is still True), we know the list is sorted, and the
function exits early to save time.

How to Use It

At the bottom of the code:

1. The program asks for a list of numbers:

python

Copy code

alist = input('Enter the list of numbers: ').split()

2. It then converts these numbers from text into actual integers:

python

Copy code

alist = [int(x) for x in alist]

3. It calls the bubble_sort function to sort the list:

python

Copy code

bubble_sort(alist)

4. Finally, it prints the sorted list:

python

Copy code

print('Sorted list: ', alist)

Example

If you enter:

mathematica

Copy code

Enter the list of numbers: 4 3 1 5 2

The code will output:

less

Copy code

Sorted list: [1, 2, 3, 4, 5]

Summary
BINARY SEARCH BUBBLE SORT QUICK SORT

1. The code sorts numbers by repeatedly swapping pairs that are out of order.

2. It stops early if no swaps are needed, meaning the list is already sorted

You might also like