Conversation
| #include <chrono> | ||
| #include <iostream> | ||
| #include <random> | ||
| #include <time.h> |
There was a problem hiding this comment.
| #include <time.h> | |
| #include <сtime> |
это позволяет понять что вы используете С библиотеки
| #include <time.h> | ||
| using namespace std::chrono; | ||
|
|
||
| void BubbleSort(int *begin, int *end) { |
There was a problem hiding this comment.
а проверить что begin и end не nullptr
| using namespace std::chrono; | ||
|
|
||
| void BubbleSort(int *begin, int *end) { | ||
| for (end; end > begin; end--) { |
There was a problem hiding this comment.
а если у меня такая ситуация
int array[5];
BubbleSort(array, array+5);
то в вашей реализации при разыменовании end я получу UB
в той имплиментации которой вы написали end это не есть часть массива, это некий признак который говорит что у вас конец массива, это просто как маркер его нельзя разыменовывать
| int temp{}; | ||
| temp = *p; |
There was a problem hiding this comment.
| int temp{}; | |
| temp = *p; | |
| int temp {*p}; |
| int temp{}; | ||
| temp = *begin; |
There was a problem hiding this comment.
| int temp{}; | |
| temp = *begin; | |
| int temp{*begin}; |
| std::mt19937 gen(time(0)); | ||
| std::uniform_int_distribution<> uid(0, 50); | ||
| switch (ch) { | ||
| case (0): |
There was a problem hiding this comment.
добавте вместо 0, именованую константу enum или constexpr
| } | ||
| break; | ||
| default: | ||
| std::cout << "Error" << std::endl; |
There was a problem hiding this comment.
в случае error может выйти с приложения
| std::cout << std::endl << "Array after bubble sort" << std::endl; | ||
| for (int i = 0; i < size; i++) { | ||
| std::cout << arr[i] << "\t"; | ||
| } |
There was a problem hiding this comment.
в расчет времени не надо включать вывод массива на экран
| } | ||
| } | ||
| } | ||
| void Sort_d(double* arr, size_t size) { |
There was a problem hiding this comment.
а зачем разные имена? у вас же перегрузка норм бы работала. Т.е. если у вас функции с одинаковыми именами, но разными типами, то это ок. Писать разные имена это лишнее, у вас перегрузка функций
| << "0-->for Random Input" << std::endl | ||
| << "1--> for User Input" << std::endl; | ||
| std::cin >> ch; | ||
| std::mt19937 gen(time(0)); |
There was a problem hiding this comment.
лучше вместо нуля написать nullptr, т.к. функция time принимает указатель, это даст лучшую читабельность и будет понятно что там используется указатель
No description provided.