Constantine
там реализация с квадратом в худшем
Constantine
по крайней мере, была
Constantine
потому что разработчики явы не запарились
Constantine
поэтому же у них все хеш-коллекции ложатся в худшем
Vladislav
Потому что не хотели вносить недетерминизм, а гарантированные методы выбирать хороший pivot замедляют средний случай
Constantine
сейчас бы париться по поводу недетерминизма алгоритма сортировки массива
Constantine
Потому что не хотели вносить недетерминизм, а гарантированные методы выбирать хороший pivot замедляют средний случай
подожди, есть же еще метод просто написать полурекурсивную реализацию и ограничить число шагов
Constantine
это вообще никак не замедляет средний случай
Vladislav
это вообще никак не замедляет средний случай
Константу увеличивает прилично, как я понимаю
Vladislav
https://www.reddit.com/r/programming/comments/4jlkhv/accu_2016_keynote_by_andrei_alexandrescu/
Constantine
Константу увеличивает прилично, как я понимаю
в какой момент? вычислять число итераций не долго, неполная рекурсивность не ухудшение константы
Vladislav
https://www.reddit.com/r/programming/comments/4jlkhv/accu_2016_keynote_by_andrei_alexandrescu/
Александреску вроде что-то придумывал новое
Constantine
Александреску... у меня до сих пор в одном файле написано ` #ifdef ALEXANDRESCU #error "Too easy for Alexanrescu" #endif //копипаста из локи
Constantine
собственно, там static_assert всякие для C++98
Constantine
А, я понял о чем ты, так можно наверное
qsort(l, r) //... qsort(l, m); qsort(m+1, r); ==> qsort(l, r) for (iterations++) { //... if (iterations > MAGIC_CONSTANT) { heapsort(l, r); break; } qsort(with minimal length ((l, m), (m+1, r))) (l, r) = with maximal length ((l, m), (m+1, r)) }
Bohdan
magic constant? 😂
Constantine
ну да
Constantine
вроде там на самом деле current_constant = r - l; и потом current_constant = current_constant / 2 + current_constant/4 в таком духе
Constantine
вместо расчета итераций
Constantine
как получается 0 - уходим в хипсорт
Bohdan
А кто название давал?
Constantine
я просто налобал в поле ввода же
Constantine
вроде, именно такие схемы во всяких MS std::sort
Constantine
с кучей ифов еще на маленькие массивы скидываться в INSERTION
Constantine
Там нужно примерно посчитать, сколько в среднем должно быть итераций такой штуки
Constantine
Если это число превосходится, инпут специально построен против текущей реализации qsort
Constantine
Поэтому мы уходим в heapsort
Илья
Люди, у меня например есть строка 2 + 2 и мне нужно её сплитнуть. Как это сделать?
Александр
eval
melvin
в спп есть евал?
melvin
(в спп есть все)
Stanislav
можно и сделать
31337
Кажется чатик помер давно
31337
А нет, у меня сбилась дата. (Показал январь 3)
Anton
После сбоя даты при звонке кого-то у меня вис телик.
Evgenii
Evgenii
ты спамер?
Surreal
The microarchitecture of Intel, AMD and VIA CPUs An optimization guide for assembly programmers and compiler makers http://www.agner.org/optimize/microarchitecture.pdf
Крылатый
Класс!
Крылатый
Спасибо.
Влад
Привет, а тут есть кто может провести мне кодРевью?
Влад
Или к кому вообще можно обратиться за такой услугой?
Dr. Friedrich
А ты просто вбрасывай код, и ревьюеры сами потянутся.
Влад
https://github.com/Lazzlo2096/maPong - небольшая игра))
Влад
ну а вообще, было бы классно найти сервис с такой услугой, мол чтобы указали на архитектурные и другие ошибки
Surreal
using namespace std; using namespace alx; const int SCREEN_W = 640*1.25; const int SCREEN_H = 480; extern int yourScore; extern int evilScore; Боль.
Surreal
int hight; боль
Vladislav
evil vs enemy тоже
Влад
extern - согласен, по остальному почему?
Влад
слишком размытые названия переменных?
Surreal
Вас не смущает, что вы в заголовочном файле вне скопа объявляете: using namespace std; using namespace alx; ?
Влад
а, да это в процессе))
Влад
это да, я пока не так в нём хорошо
Влад
Richard
height
Surreal
Это не в плюсовый чат вопрос, а в гугл транслейт.
Влад
height
благодарю
Surreal
Я бы еще советовал все существующие виды конструкторов явно писать. Даже если они дефолтные, то так и писать ClassName() = default;
Влад
есть на стаковерфло
Я знаю что туда льют проблемный код, но посути мне нужен просто ревью
Влад
https://codereview.stackexchange.com/
Благодарствую
Surreal
И не смешивайте комментарии на разных языках. Пишите их только на английском.
Surreal
И выберите единый стиль именования переменных\методов и т.д. не надо мешать так: void move_down(); void move_up(); void autoCatch(Point<int> point);
Влад
Учту, спасибо, если у когото есть ещё замечания, то будет заебись
Surreal
Если в заголовочном файле, который вы инклудите, несколько классов\функций, но вы используете только 1-3 из них, то желательно указывать, что именно используется, типа: #include <algorithm> // std::sort, std::max
Surreal
В .cpp файле желательно делать инклуды всего, что используется в этом .cpp файле, независимо от того, есть эти инклуды в .h файле, или нет. Т.е. если в файле MyClass.h есть #include <string> и класс std::string используется в файле MyClass.cpp, то желательно сделать #include <string> и в MyClass.cpp.
Влад
Спасибо, как же заебиьс что есть чатик где можно обсудть с братками прогу))
ᅟ
Доброго времени суток. Такой вопрос : У меня есть QString_source и QString_input. Их надо сравнить таким образом, если все значения из QString_input есть в QString_source, то возвращается true ?
ᅟ
Заранее спасибо