Поступашки С++

Description
По всем вопросам @swift_dr
Advertising
We recommend to visit

Шо та.

Last updated 1 month, 3 weeks ago

Last updated 2 months, 3 weeks ago

Открытые дневники

реклама: [email protected]

Last updated 2 weeks, 4 days ago

8 months ago
Поступашки открывают набор на курс по …

Поступашки открывают набор на курс по алгоритмам!

Хочешь поступить в ШАД или магистратуру, затащить олимпиаду? Или просто мечтаешь стать крутым специалистом и тащить алгособесы, но не хватает фундамента и практики? Тогда тебе к нам!

Курс заточен под практику, будут подробно разобраны ВСЕ идеи и подходы, используемые составителями.

Более того, ты сможешь получить ВСЕ ДЕНЬГИ потраченные на курс обратно, если первым решишь все домашние задание ??

Курс длится 6 недель, каждую неделю по 2 урока, огромное количество дополнительного контента, более 40 часов уроков с последующим доступом к записям и ДЗ с проверкой. На семинарах с каждым учеником общаются по очереди, полноценное общение как здесь. Ежедневная связь, пробные собесы, экзамены, персональные рекомендации, инсайды и домашнее задание с проверкой, код ревью и с разбором! Все будет еще круче, чем на всех прошлый курсах (отзывы тут). Все для того, чтобы получить топовый оффер уже летом или мы вернем потраченные деньги!

Занятия стартуют 17 мартаПрограммаиподробности.

Цена 8000р за курс, при покупке на одного человека. При покупке с другом, или если покупали наши курсы ранее 7000р, а если приобретали наши прошлые курсы по алгоритмам, то цена 4500 р. (материал полностью обновлен и расширен).

Для записи и вопросов: @menshe_treh

8 months, 4 weeks ago
9 months ago

Товарищи, продолжаем -- сегодня изучаем реализацию сортировки слиянием :

```

void merge_sort(
std::bidirectional_iterator auto const head,
std::bidirectional_iterator auto const tail)
{
auto const n = std::distance(head, tail);

if (n < 2) { return; } if (n == 2) { auto const first = head; auto const second = std::next(head); if (*first > *second) { std::iter\_swap(first, second); return; } } auto const middle = std::next(head, n / 2); merge\_sort(head, middle); merge\_sort(middle, tail); std::inplace\_merge(head, middle, tail);

}

```

Сразу изучаем, действительно ли std::inplace_merge работает inplace и не выделяет память? ?

Кто может сформулировать преимущества и недостатки сортировки слиянием относительно быстрой сортировки?

9 months ago

Как разработчику попасть на стажировку

Наш курс по бэкенд разработке начинается уже завтра (можно еще записаться), поэтому мы попросили выпускника нашего прошлого потока, который попал на стажировку в Яндекс и уже перешел в штат, поделиться тем, что бы он советовал конкретно ботать. Далее сохранен оригинальный текст.

Сейчас без алгоритмов вас никуда не возьмут - их надо знать хотя бы на макаковском уровне, про это мы говорить не будем. Рассмотрим другие навыки, которые нужно жестко заботать.

Для начала нужно разобраться в языке, на который идете (хотя бывают и исключения, когда в вакансии разрешают переходить на другие языки). Разбираться нужо на уровне нормально+/хорошо, ведь придется читать много чужого кода и быть готовым к популярным паттернам или почему делается так, а не иначе. Тут алгоритм один - найти какой-нибудь нормальный курс и найти задачи к нему. Дать ссылки на все учебные материалы по всем языкам дать не могу по понятным причинам, но рассмотрю подробно C++.
Если смотреть базу - то тут подойдет любой курс на условном степике, например, от дяди Густокашина. Хорошо посмотреть какой-нибудь уже продвинутый курс от МФТИ от Ильи Мещерина или ФКН’а от Дани Кутенина. Полезно прорешать задачи, которые, благо, находятся в открытом доступе - их мне хватило в своё время. И конечно советую балдежный курс Поступашек. Также, попрактикуйтесь в написании упрощенных версий стандартных контейнеров, умных указателей (std::shared_ptr, std::unique_ptr, std::vector, std::unordered_map…) - бывает такое, что у собеседующего нет желания придумывать какие-то задачи и он уже пальцем в STL тыкает и говорит - “А реализуйте то, а реализуйте это” :)

После изучения языка, если идете в бекенд разработчику, то полезно понимать работу сетей – почитайте сначала про модель OSI, что происходит, когда человек делает запрос в браузер и обязательно изучите HTTP, REST – по этим темам есть очень много статей на хабре. Прочитайте про JSON и попробуйте реализовать какой-нибудь примитивный HTTP сервис по типу записной книжки. Также, полезно будет посмотреть пару лекций по распределенным системам.
Часто спрашивают что-то про многопоточку - посмотрите пару первых уроков от Романа Липовского. Тут обычно задают вопросы по типу какие примитивы синхронизации знаете, и что каждый из них делае (ну то есть нужно просто базовое понимание).
Бывает, могут спросить и SQL – тут нужно изучить синтаксис (он не шибко богатый), почитать про индексы, и порешать пару задачек.
Полезно будет изучить пару инструментов промышленной разработки - Docker, git, shell чтобы комфортно себя ощущать на работе, не факт, что их спросят, но пользуются ими очень часто. Вот пару полезных лекций по этой теме.

9 months ago

Итак, товарищи, сегодня рассмотрим быструю сортировку :

```

void quick_sort(std::bidirectional_iterator auto const head,
std::bidirectional_iterator auto const tail)
{
if (head == tail) {
return;
}

auto const pivot = std::prev(tail); auto const middle = std::partition(head, tail, [pivot](auto const& value) { return value < *pivot; }); std::iter\_swap(middle, pivot); quick\_sort(head, middle); quick\_sort(std::next(middle), tail);

}
```

Кто из вас сможет объяснить в комментариях, почему
1) может быть выгодно в качестве опорного элемента (pivot) брать последний?
2) в худшем случае у нас временная сложность O(n^2), что это за худший случай?

9 months, 1 week ago
Товарищи, а сегодня небольшая подготовка к …

Товарищи, а сегодня небольшая подготовка к интервью!

Если вы прошли первоначальный скрининг, то на очном этапе вам могут устроить "проверку на вшивость" -- спросить что-то про временнУю и пространственную сложность алгоритмов сортировки, а также предложить реализовать известный алгоритм или его часть -- к примеру, лично мне однажды выпало написать реализацию алгоритма std::partition (который используется внутри быстрой сортировки).

Сегодня начнем с того, что для оценки временной сложности рассматривают лучший, средний и худший случай. Оценки для временной сложности алгоритмов сортировки смотрим в таблице, знать нужно приблизительно верхнюю половину.

Знакомимся с информацией, товарищи, а дальше будем реализовывать наиболее актуальные для интервью сортировки!

9 months, 3 weeks ago

Товарищи, сегодня небольшая иллюстрация того, как можно работать с различными локалями.

Предположим, что у вас есть задача, где нужно совмещать вывод с использованием нескольких локалей -- например, русской и английской. В частности, отличие будет в разделителе для вещественных чисел (запятая и точка, соответственно).

Одним из способов решить данную задачу является использование класса std::stringbuf, в котором можно накапливать информацию, и нескольких потоков вывода с разными локалями. Аккумулировав нужную информацию с правильным форматированием, ее можно вывести в целевой поток -- ниже небольшой пример в качестве иллюстрации:

```

#include
#include
#include

int main()
{
std::stringbuf buffer;

std::ostream en{&buffer};
en.imbue(std::locale{"en_US"});

std::ostream ru{&buffer};
ru.imbue(std::locale{"ru_RU"});

en << 2.71 << std::endl;// 2.71
ru << 3.14 << std::endl;// 3,14

std::cout << &buffer;

return 0;
}

```

А на сегодня все, товарищи, и не забываем const everything!

9 months, 3 weeks ago

Товарищи, сегодня подобрал вам крайне полезную задачку на decltype:

```

#include
#include

int main()
{
auto a = "Hello, world!";
std::cout << std::is_same_v;
return 0;
}

```

Что выведет программа и почему?

#quiz

Все обсуждения в нашем чате

9 months, 3 weeks ago

Товарищи, все обсуждения в нашем чате: https://t.me/postupashki_cpp_chat

9 months, 3 weeks ago

Товарищи, сегодня нашел задачку поинтереснее:
`#include

int main()
{
int a = '0';
char const& b = a;
std::cout << b;
++a;
std::cout << b;
return 0;
}`
Что выведет программа и почему?

#quiz

Все обсуждения в нашем чате

We recommend to visit

Шо та.

Last updated 1 month, 3 weeks ago

Last updated 2 months, 3 weeks ago

Открытые дневники

реклама: [email protected]

Last updated 2 weeks, 4 days ago