Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bottomsnode/searching-and-sorting-python
Explore Python implementations of essential searching and sorting algorithms. From linear and graph searches to bubble, merge, and quick sort, this repository offers crucial tools for learners and practitioners, enhancing problem-solving skills and coding proficiency.
https://github.com/bottomsnode/searching-and-sorting-python
data-structures python searching-algorithms sorting-algorithms tkinter-graphic-interface
Last synced: 1 day ago
JSON representation
Explore Python implementations of essential searching and sorting algorithms. From linear and graph searches to bubble, merge, and quick sort, this repository offers crucial tools for learners and practitioners, enhancing problem-solving skills and coding proficiency.
- Host: GitHub
- URL: https://github.com/bottomsnode/searching-and-sorting-python
- Owner: BottomsNode
- Created: 2024-06-06T08:21:44.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-06-06T08:24:24.000Z (6 months ago)
- Last Synced: 2024-06-22T11:18:11.046Z (5 months ago)
- Topics: data-structures, python, searching-algorithms, sorting-algorithms, tkinter-graphic-interface
- Language: Jupyter Notebook
- Homepage:
- Size: 8.79 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Searching and Sorting Algorithms
This repository contains Python implementations of various searching and sorting algorithms.
## Searching Algorithms
- **BFS (Breadth-First Search)**: Traverse a graph by exploring all neighbor nodes at the present depth prior to moving on to the nodes at the next depth level.
- **DFS (Depth-First Search)**: Traverse a graph by going as deeply as possible along each branch before backtracking.
- **Linear Search**: Sequentially check each element of a list until the desired element is found or the list is exhausted.## Sorting Algorithms
- **Bubble Sort Algorithm**: Repeatedly step through the list, compare adjacent elements, and swap them if they are in the wrong order.
- **Heap Sort Algorithm**: Convert the array into a max heap, repeatedly remove the maximum element from the heap and rebuild the heap.
- **Insertion Sort Algorithm**: Build the final sorted array one item at a time by repeatedly picking the next item and inserting it into the correct position.
- **Merge Sort Algorithm**: Divide the unsorted list into n sublists, each containing one element, then repeatedly merge sublists to produce new sorted sublists until there is only one sublist remaining.
- **Quick Sort Algorithm**: Partition the array into two sub-arrays by selecting a pivot element and rearranging the array so that all elements less than the pivot are on the left and all elements greater are on the right, then recursively sort the sub-arrays.
- **Selection Sort Algorithm**: Repeatedly find the minimum element from the unsorted part of the array and swap it with the first element.## Usage
Each algorithm implementation is contained within its own Python script file. Feel free to explore and run the scripts to see the algorithms in action.
## Contributing
Contributions are welcome! If you'd like to contribute to this project, please fork the repository and create a pull request with your changes.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.