1.6 KiB
1.6 KiB
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 (test/PERM/perm[15-150]K.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 (located test/PERM/perm15K.txt)
- EX: bin/main.out -d
-o | --output
- Set file for outputting InOrderTreeTraversal
- EX: bin/main.out -f test/PERM/perm15K.txt -s bst -o test/traversal.txt
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
- binary search tree [default]
Notes
- Filename for i/o and implementation are preselected through the CLI.
- BST and RBT specific methods are called once program has constructed it