From 23a02e9dd1861cd22c9dde270b3002d91f214dcd Mon Sep 17 00:00:00 2001 From: robtor Date: Fri, 3 Nov 2023 11:41:58 +0100 Subject: [PATCH] fix --- task1/main.cpp | 3 ++- task1/mergesort.h | 2 +- task1/mergesort_mt.h | 10 ++++++++-- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/task1/main.cpp b/task1/main.cpp index 72c0ee3..7b770d7 100644 --- a/task1/main.cpp +++ b/task1/main.cpp @@ -5,6 +5,7 @@ #include #include +#include /* Create a simple sorting application that uses the mergesort algorithm to sort a @@ -98,7 +99,7 @@ auto main(int argc, char *argv[]) -> int { return 0; - } catch (std::exception e) { + } catch (std::exception &e) { fmt::print("Error occured: {}", e.what()); return -1; } diff --git a/task1/mergesort.h b/task1/mergesort.h index 0a27d55..b5ad3eb 100644 --- a/task1/mergesort.h +++ b/task1/mergesort.h @@ -305,7 +305,7 @@ namespace algo { while (l < left.end() && r < right.end()) { if (cmp(*l, *r)) { - outpbufut.insert(o, *l); + output.insert(o, *l); l++; } else { output.insert(o, *r); diff --git a/task1/mergesort_mt.h b/task1/mergesort_mt.h index 3847c1d..51fc7a1 100644 --- a/task1/mergesort_mt.h +++ b/task1/mergesort_mt.h @@ -11,13 +11,13 @@ class MergeSorterMT { auto merge(std::span &output, std::span left, std::span right) -> void { std::vector buf; - buf.reserver(left.size() + right.size()); + buf.reserve(left.size() + right.size()); auto l = left.begin(); auto r = right.begin(); auto o = buf.begin(); - hile (l < left.end() && r < right.end()) { + while (l < left.end() && r < right.end()) { if (cmp(*l, *r)) { buf.insert(o, *l); l++; @@ -44,5 +44,11 @@ class MergeSorterMT { } } + auto split(std::vector &data, C cmp, int depth, int &max_depth, std::mutex &mut) -> void { + + } + + + }; \ No newline at end of file