diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2016-04-17 23:32:44 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2016-04-17 23:32:44 +0300 |
commit | 185a9e4f00d9269a3711ada8ce5daf9de7a8173e (patch) | |
tree | 87d96beb0eab3e5f3ef739042bd3492c44a98e38 /test.py | |
parent | median: quicksort instead of .sort() (diff) | |
download | sorting-algorithms-185a9e4f00d9269a3711ada8ce5daf9de7a8173e.tar.gz sorting-algorithms-185a9e4f00d9269a3711ada8ce5daf9de7a8173e.zip |
refactoring + better plot captions
Diffstat (limited to 'test.py')
-rw-r--r-- | test.py | 26 |
1 files changed, 13 insertions, 13 deletions
@@ -4,23 +4,23 @@ from enum import Enum -class InputKind(Enum): - SORTED, RANDOMIZED, REVERSED = 'sorted', 'randomized', 'reversed' +class OrderType(Enum): + ASCENDING, RANDOM, DESCENDING = 'ascending', 'random', 'descending' def __str__(self): return self.value def gen_input(kind, n): - if kind is InputKind.SORTED: + if kind is OrderType.ASCENDING: return list(range(n)) - elif kind is InputKind.REVERSED: + elif kind is OrderType.DESCENDING: return sorted(range(n), reverse=True) - elif kind is InputKind.RANDOMIZED: + elif kind is OrderType.RANDOM: from random import sample return sample(range(n), n) else: raise NotImplementedError( - 'invalid initial input state \'{}\''.format(kind)) + 'invalid input ordering: \'{}\''.format(kind)) if __name__ == '__main__': import algorithms.registry @@ -30,9 +30,9 @@ if __name__ == '__main__': if n < 0: raise argparse.ArgumentTypeError('cannot be negative') return n - def input_kind(s): + def order(s): try: - return InputKind(s) + return OrderType(s) except ValueError: raise argparse.ArgumentError() @@ -41,13 +41,13 @@ if __name__ == '__main__': parser.add_argument('--algorithm', '-l', required=True, choices=algorithms.registry.get_codenames(), help='specify algorithm codename') - parser.add_argument('--input', '-i', - choices=tuple(x for x in InputKind), - type=input_kind, default=InputKind.RANDOMIZED, - help='set initial input state') + parser.add_argument('--order', '-i', + choices=tuple(x for x in OrderType), + type=order, default=OrderType.RANDOM, + help='specify input order') parser.add_argument('--length', '-n', type=natural_number, default=100, help='set input length') args = parser.parse_args() - xs = gen_input(args.input, args.length) + xs = gen_input(args.order, args.length) print(algorithms.registry.get(args.algorithm).get_function()(xs)) |