Cs340 - Project 1 and 2
Go to file
2023-03-06 03:58:23 -06:00
bin Fixed .gitignore 2023-02-11 19:23:48 -06:00
build Fixed .gitignore 2023-02-11 19:23:48 -06:00
include BST seems to fully work, moving on to RBT 2023-03-06 03:13:14 -06:00
src RBT fully functioning 2023-03-06 03:58:23 -06:00
test Separated sorts into separate namespace 2023-02-26 21:34:32 -06:00
.gitignore Separated sorts into separate namespace 2023-02-26 21:34:32 -06:00
Makefile Major refactor of files 2023-03-05 03:05:41 -06:00
README.md BST seems to fully work, moving on to RBT 2023-03-06 03:13:14 -06:00

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