57 lines
1.5 KiB
Markdown
57 lines
1.5 KiB
Markdown
# 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
|