Module pywander.algorithm.sort.select_sort
select_sort nearly equal with the select_sort2, but the select_sort2 has a more understandable writing style.
Functions
def select_sort(seq)
-
Expand source code
def select_sort(seq): seq2 = seq.copy() for i in range(0, len(seq2)): minimum = i for j in range(i + 1, len(seq2)): if seq2[j] < seq2[minimum]: minimum = j seq2[i], seq2[minimum] = seq2[minimum], seq2[i] return seq2
def select_sort2(seq)
-
Expand source code
def select_sort2(seq): """ :param seq: :return: """ def find_smallest_index(seq): smallest = seq[0] smallest_index = 0 for i in range(1, len(seq)): target = seq[i] if target < smallest: smallest = target smallest_index = i return smallest_index res = [] seq_copy = seq.copy() for i in range(0, len(seq)): smallest_index = find_smallest_index(seq_copy) res.append(seq_copy.pop(smallest_index)) return res
:param seq: :return: