0% found this document useful (0 votes)
4 views2 pages

Basic Python Algorithms (Sorting)

The document explains the Bubble Sort algorithm, which sorts an array by repeatedly swapping adjacent elements that are out of order. It includes a Python code implementation and discusses the time complexity (O(n^2) worst and average case, O(n) best case) and space complexity (O(1)). Additionally, it highlights applications such as educational purposes and error detection in computer graphics.
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)
4 views2 pages

Basic Python Algorithms (Sorting)

The document explains the Bubble Sort algorithm, which sorts an array by repeatedly swapping adjacent elements that are out of order. It includes a Python code implementation and discusses the time complexity (O(n^2) worst and average case, O(n) best case) and space complexity (O(1)). Additionally, it highlights applications such as educational purposes and error detection in computer graphics.
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

Topic: Computer Science - Basic Python Algorithms (Sorting)

1. Bubble Sort Algorithm Bubble Sort is the simplest sorting algorithm


that works by repeatedly swapping the adjacent elements if they are in
the wrong order.

Code Implementation:

Python

def bubble_sort(arr):

n = len(arr)

# Traverse through all array elements

for i in range(n):

# Last i elements are already in place

for j in range(0, n-i-1):

# Traverse the array from 0 to n-i-1

# Swap if the element found is greater

# than the next element

if arr[j] > arr[j+1]:

arr[j], arr[j+1] = arr[j+1], arr[j]

# Driver code to test above

arr = [64, 34, 25, 12, 22, 11, 90]

bubble_sort(arr)

print("Sorted array is:", arr)

Complexity Analysis:

 Time Complexity: O(n^2) in worst and average case. O(n) in best


case (already sorted).

 Space Complexity: O(1) auxiliary space.

2. Applications:

 Useful for educational purposes to understand sorting concepts.

 Used in computer graphics to detect very small errors in almost-


sorted arrays.

You might also like