# -*- coding: utf-8 -*- # @File : selectsort.py # @Author: bruce # @Date : 2021/5/24 # @Desc :再忙也算法1 class SelectSort(): ''' python家族万物皆对象,有了对象就有类 ''' def __init__(self, ls): self.ls = ls def sort(self): # 选择排序,记录index,最后交换 lens = len( self.ls ) if lens > 1: for i in range( lens ): min_index = i n = i while n < lens - 1: n += 1 if self.get_min( self.ls[min_index], self.ls[n] ): min_index = n self.ls[i], self.ls[min_index] = self.ls[min_index], self.ls[i] return self.ls def get_min(self, a, b): if isinstance(a,str): a=ord(a) if isinstance(b,str): b=ord(b) return (True if a > b else False) if __name__ == '__main__': a = [100, 'a', 'm', 'n', 'e', 'q', 's', 4, 21, 99, 'h', 'k'] sort = SelectSort( a ) print( sort.sort() )
》》》[4, 21, 'a', 99, 100, 'e', 'h', 'k', 'm', 'n', 'q', 's']