# Sorting A program written to test the time complexity of insertion, merge, and heap sort # Author Gregory Crawford # Compiling Run `make` to compile the project. Output files get placed into test/SORTED # Running Run the program with chosen arguments `bin/main.out [-f filename] [-s sort-type] [-l word]` # Commands ## bin/main.out [-a | -f filename | -d | ] Ex: `bin/main.out -f test/PERM/perm15K.txt -s bst -l apple` # Arguments ## File selection > -a | --all - Runs through all the original files (perm15K.txt - perm150K.txt) - *EX: bin/main.out -a* > -f path/to/file.txt | --filename path/to/file.txt - Runs a specific file to sort - *EX: bin/main.out -f perm15K.txt* > -d | --default - Runs sort only on the default test file (perm15K.txt) - *EX: bin/main.out -d* ## Sorting type selection > -s | --sort-type - Selects a sort type - Options: - binary search tree [***default***] - *EX: bin/main.out -s bst* - red-black tree - *EX: bin/main.out -s rbt* - insertion - *EX: bin/main.out -s insertion* - merge - *EX: bin/main.out -s merge* - heap - *EX: bin/main.out -s heap* - all (only runs insertion, merge, and heap sort) - *EX: bin/main.out -s all* ## Locating a word > -l | --locate - Locates a word and prints the output [***default***] - Must be used with BST or RBT sort type - *EX: bin/main.out -l apple* # Notes