Skip to content

Commit

Permalink
add doctest for quick_sort_3_partition (#11779)
Browse files Browse the repository at this point in the history
  • Loading branch information
lorduke22 authored Dec 30, 2024
1 parent 8921b56 commit 5942059
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions sorts/quick_sort_3_partition.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,27 @@
def quick_sort_3partition(sorting: list, left: int, right: int) -> None:
""" "
Python implementation of quick sort algorithm with 3-way partition.
The idea of 3-way quick sort is based on "Dutch National Flag algorithm".
:param sorting: sort list
:param left: left endpoint of sorting
:param right: right endpoint of sorting
:return: None
Examples:
>>> array1 = [5, -1, -1, 5, 5, 24, 0]
>>> quick_sort_3partition(array1, 0, 6)
>>> array1
[-1, -1, 0, 5, 5, 5, 24]
>>> array2 = [9, 0, 2, 6]
>>> quick_sort_3partition(array2, 0, 3)
>>> array2
[0, 2, 6, 9]
>>> array3 = []
>>> quick_sort_3partition(array3, 0, 0)
>>> array3
[]
"""
if right <= left:
return
a = i = left
Expand Down

0 comments on commit 5942059

Please sign in to comment.