From 730795157a4fe89fcb3b879770bfba95b34fa0fa Mon Sep 17 00:00:00 2001 From: Kevin Kern Date: Tue, 4 Nov 2025 12:25:22 +0100 Subject: [PATCH 1/2] Add simple Python bubble sort implementation --- bubble_sort.py | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 bubble_sort.py diff --git a/bubble_sort.py b/bubble_sort.py new file mode 100644 index 0000000..c5c9e81 --- /dev/null +++ b/bubble_sort.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 +""" +Simple bubble sort implementation in Python. +""" + + +def bubble_sort(arr): + """ + Sort an array using the bubble sort algorithm. + + Args: + arr: List of comparable elements to sort + + Returns: + Sorted list (original array is modified in-place) + """ + n = len(arr) + # Make a copy to avoid modifying the original + arr = arr.copy() + + # 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] + + return arr + + +if __name__ == "__main__": + # Example usage + test_array = [64, 34, 25, 12, 22, 11, 90] + print(f"Original array: {test_array}") + sorted_array = bubble_sort(test_array) + print(f"Sorted array: {sorted_array}") + From 77df7776a21122d39444fba70fb26991170eba97 Mon Sep 17 00:00:00 2001 From: Kevin Kern Date: Tue, 4 Nov 2025 12:27:24 +0100 Subject: [PATCH 2/2] Add simple JavaScript bubble sort implementation --- bubble_sort.js | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 bubble_sort.js diff --git a/bubble_sort.js b/bubble_sort.js new file mode 100644 index 0000000..166500b --- /dev/null +++ b/bubble_sort.js @@ -0,0 +1,44 @@ +/** + * Simple bubble sort implementation in JavaScript. + */ + +/** + * Sort an array using the bubble sort algorithm. + * + * @param {number[]} arr - Array of numbers to sort + * @returns {number[]} Sorted array (original array is not modified) + */ +function bubbleSort(arr) { + // Make a copy to avoid modifying the original + const sorted = [...arr]; + const n = sorted.length; + + // Traverse through all array elements + for (let i = 0; i < n; i++) { + // Last i elements are already in place + for (let j = 0; j < n - i - 1; j++) { + // Traverse the array from 0 to n-i-1 + // Swap if the element found is greater than the next element + if (sorted[j] > sorted[j + 1]) { + // Swap elements + [sorted[j], sorted[j + 1]] = [sorted[j + 1], sorted[j]]; + } + } + } + + return sorted; +} + +// Example usage +if (require.main === module || typeof window === 'undefined') { + const testArray = [64, 34, 25, 12, 22, 11, 90]; + console.log('Original array:', testArray); + const sortedArray = bubbleSort(testArray); + console.log('Sorted array:', sortedArray); +} + +// Export for use as a module +if (typeof module !== 'undefined' && module.exports) { + module.exports = { bubbleSort }; +} +