Skip to content

Instantly share code, notes, and snippets.

View NickTikhomirov's full-sized avatar
🐢
Черепашки, бухгалтерские отчёты, ядерные взрывы, студенты, стулья, столы...

NickTikhomirov

🐢
Черепашки, бухгалтерские отчёты, ядерные взрывы, студенты, стулья, столы...
View GitHub Profile
@NickTikhomirov
NickTikhomirov / oirs.md
Last active February 14, 2023 00:37
Обнаружение и распознавание тетрадок в Google Colab

ДАННЫЙ ПЕРЕЧЕНЬ СОДЕРЖИТ ОБЩЕДОСТУПНЫЕ МАТЕРИАЛЫ, ПРОМАРКИРОВАННЫЕ КАК РАЗРАБОТАННЫЕ СОТРУДНИКАМИ ВШЭ И MAIL.RU, АВТОР В МОМЕНТ НАПИСАНИЯ НЕ МОЖЕТ ГАРАНТИРОВАТЬ, ЧТО В БУДУЩЕМ ЭТИ ОРГАНИЗАЦИИ НЕ БУДУТ ПРИЗНАНЫ ИНОСТРАННЫМИ АГЕНТАМИ

Оглавление

  1. Семинар 1
  2. Семинар 2
  3. Семинар 3
  4. Семинар 4
  5. Семинар 5
@NickTikhomirov
NickTikhomirov / pyshit.py
Created February 16, 2020 19:52
my simple python program (first after hello world)
import math
class AbstractOperation:
def introduce(self) -> str:
return ""
def perform(self, a, b):
return a
@NickTikhomirov
NickTikhomirov / Bonus_code.md
Last active January 9, 2020 07:50
Дополнительные примеры для моих вопросов

К вопросу 4.1 - особенности std::unordered_map

Unordered_map - аналог map (то есть контейнер для пар элементов, главным из которых является первый). Внутри unordered_map живёт хэш-таблица, про которые мы с вами ничего не знаем, но когда-нибудь нам расскажут. Важной особенностью хэш-таблицы является работа за О(1), что круто на фоне О(log(n)) в случае map. С другой стороны, для этого мы жертвуем возможностью использовать эту структуру как средство упорядоченья элементов.

Особенности unordered_map: (почти копия из map)

  1. На второй элемент карты не налагается вообще никаких ограничений и он не участвует ни в каких сравнениях
  2. В силу данного определения, в unordered_map могут быть положены только те пары, первые элементы которых
    1. сравнимы на равенство (можно просто перегрузить оператор ==, но обязательно он должен быть const)
  3. хэшируемы - все базовые и многие встроенные в бибилотеку std типы хэшируются без вашего участия. Для остальных необходима функция хэширования, которую надо реализовать к
@NickTikhomirov
NickTikhomirov / AYA12.md
Last active January 12, 2020 14:33
questions for answer nomer 12

Cодержание

  • 12.1 - указатели на функции
  • 12.2 - functional
  • 12.3 - лямбда-функции
  • 12.4 - функторы
  • Стрельба по коленям

12.Х

12.1. Указатели на функции

(заголовочных файлов не требуется, пространства имён не нужны)

@NickTikhomirov
NickTikhomirov / Qu3.md
Last active June 20, 2019 11:36
Конструктор, деструктор, конструктор копирования, конструктор перемещения

Вопроc 3, Конструктор, деструктор, конструктор копирования, конструктор перемещения

Автор: Никита

Головной раздел: Меню

Билет 3. Конструкторы и деструктор класса, конструктор копирования и конструктор перемещения, назначение, пример.

Конструктор - блок инструкций, вызываемый при создании объекта класса.

Деструктор - блок инструкций, вызываемый при уничтожении объекта класса.

@NickTikhomirov
NickTikhomirov / Qu(1-2),(4-5).md
Last active June 19, 2019 18:43
Основы (кроме конструкторов)

Вопросы 1,2,4,5, Основы

Автор: Никита

Головной раздел: Меню

Билет 1. Классы в языке С++: объявление, поля и методы классов. Определение функций внутри класса и за пределами класса, примеры.

Класс - это структура, в которую в языке С++ введены методы для обработки полей.

Ключевые слова для объявления класса:

  • struct
@NickTikhomirov
NickTikhomirov / Qu(6-8),(33-34).md
Last active June 19, 2019 18:05
Разное (указатели, динамические типы, друзья, шаблоны)

Вопросы 6-8,33,34, Остальное

Автор: Толик и Никита

Головной раздел: Меню

Билет 6. Указатели на компоненты класса (на функции и поля класса), назначение, пример.

Чтобы обратиться не к компоненту класса, а сразу к указателю на него используются операторы ".*" и "->*". Перед использованием этих операторов сами указатели надо ещё настроить.

Указатель на поле.

Шаг 1: Объявить указатель на поле: [тип] [класс]::*[имя_указателя]

@NickTikhomirov
NickTikhomirov / Qu27-32.md
Last active June 19, 2019 17:58
Потоки

Вопросы 27-31, Потоки

Автор: Толик

Головной раздел: Меню

Вопрос 27. Многозадачность в стандартной библиотеке C++: высокоуровневый интерфейс (функция std::async() и шаблон класса std::future< >), пример создания потока и получение результата потоковой функции.

std::async позволяет выполнять функцию реально или мнимо параллельно.

std::future предоставляет механизм взаимодействия с результатом асинхронной функции.

@NickTikhomirov
NickTikhomirov / Qu19-26.md
Last active June 19, 2019 18:51
Исключения

Вопросы 19-26, Исключения

Автор: Толик

Головной раздел: Меню

Вопрос 19. Понятие особой (исключительной) ситуации в Си++. Общий формат обработки исключительных ситуаций (ключевые слова: try, catch, throw).

Исключительная ситуация - тот момент, когда дальнейшее выполнение программы невозможно.

Обработка исключений, возбужденных оператором throw, идет по следующей схеме:

@NickTikhomirov
NickTikhomirov / Qu13-18.md
Last active June 19, 2019 18:07
Наследование

Вопросы 13-18, Наследование

Автор: Толик и Никита

Головной раздел: Меню

Билет 13. Наследование классов. Объявление производного класса, пример использования.

Основная идея: на базе существующего класса (называется родитель или базовый), создается производный класс (наследник или дочерний), который включает в себя поля и функции базового класса (наследует их), и содержит дополнительные поля (обладает новыми свойствами) и функции.

Для наследования после названия класса ставится двоеточие, и дальше имя класса, от которого наследуемся: