|
|
@@ -7,9 +7,9 @@
|
|
|
#include <vector>
|
|
|
|
|
|
#include "json.hpp"
|
|
|
-//#include "timealgorithms.h"
|
|
|
#include "insertionsort.h"
|
|
|
#include "mergesort.h"
|
|
|
+#include "quicksort.h"
|
|
|
|
|
|
int main(int argc, char* argv[]) {
|
|
|
// read JSON file and store in jsonObject
|
|
|
@@ -25,9 +25,6 @@ int main(int argc, char* argv[]) {
|
|
|
//int n = jsonObject["metadata"]["arraySize"];
|
|
|
std::vector<int>* sampleArray = new std::vector<int>();
|
|
|
|
|
|
- // initialize timer
|
|
|
- time_t timer;
|
|
|
-
|
|
|
// initialize insertion sort variables
|
|
|
int *insReturnArray;
|
|
|
double insStartTime;
|
|
|
@@ -36,11 +33,10 @@ int main(int argc, char* argv[]) {
|
|
|
int *mergeReturnArray;
|
|
|
double merStartTime;
|
|
|
double merTime;
|
|
|
- //double merTime;
|
|
|
// initialize quick sort variables
|
|
|
- //int quickComparisonCounter;
|
|
|
- //int quickMemAccessCounter;
|
|
|
- //double quickTime;
|
|
|
+ int *quickReturnArray;
|
|
|
+ double quickStartTime;
|
|
|
+ double quickTime;
|
|
|
|
|
|
std::string sampleName; // Sample key name to iterate
|
|
|
|
|
|
@@ -74,21 +70,23 @@ int main(int argc, char* argv[]) {
|
|
|
merStartTime = time(0);
|
|
|
mergeReturnArray = MergeSort(sampleArray);
|
|
|
merTime = time(0) - merStartTime;
|
|
|
- std::cout << "insertion sort comparison counter: " << *mergeReturnArray << std::endl;
|
|
|
- std::cout << "insertion sort memory access counter: " << *(mergeReturnArray + 1) << std::endl;
|
|
|
- std::cout << "wallclock time for insertion sort: " << merTime << std::endl;
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- //QuickSort(*underlyingSampleArray, *insComparisonCounter, *insMemAccessCounter);
|
|
|
-
|
|
|
-
|
|
|
- // initiate CSV file to which data will be written
|
|
|
+ std::cout << "merge sort comparison counter: " << *mergeReturnArray << std::endl;
|
|
|
+ std::cout << "merge sort memory access counter: " << *(mergeReturnArray + 1) << std::endl;
|
|
|
+ std::cout << "wallclock time for merge sort: " << merTime << std::endl;
|
|
|
+
|
|
|
+ quickStartTime = time(0);
|
|
|
+ quickReturnArray = QuickSort(sampleArray);
|
|
|
+ quickTime = time(0) - quickStartTime;
|
|
|
+ std::cout << "quick sort comparison counter: " << *quickReturnArray << std::endl;
|
|
|
+ std::cout << "quick sort memory access counter: " << *(quickReturnArray + 1) << std::endl;
|
|
|
+ std::cout << "wallclock time for quick sort: " << quickTime << std::endl;
|
|
|
+
|
|
|
+ // initiate CSV file quickto which data will be written
|
|
|
//std::ofstream theFile;
|
|
|
//theFile.open("timingalgorithms.csv");
|
|
|
//theFile << "Sample,InsertionSortTime,InsertionSortCompares,InsertionSortMemaccess,MergeSortTime,MergeSortCompares,MergeSortMemaccess,QuickSortTime,QuickSortCompares,QuickSortMemaccess,\n";
|
|
|
|
|
|
//theFile.close();
|
|
|
- file.close();
|
|
|
+ file.close(); // close JSON file
|
|
|
return 0;
|
|
|
}
|