Догнать и перегнать boost::lexical_castRoman Orlov
Разбор нестандартной реализации преобразования целого числа в строку без использования циклов и рекурсивных вызовов времени исполнения - только рекурсия на этапе компиляции
Фитнес для вашего кода: как держать его в формеIlia Shishkov
C++ Россия 2017
Во время моего выступления мы поговорим о принципе "Minimize coupling, maximize cohesion". Обсудим, что это такое и что значат эти непонятные слова. Кроме того на приближенном к реальности примере мы рассмотрим, как, применяя указанный принцип, можно держать ваш код в форме, чтобы он был готов ко всем неожиданностям, которые подстерегают ваш проект в течение его жизни.
Павел Сушин «Асинхронное программирование на С++: callbacks, futures, fibers»Platonov Sergey
За время работы над проектом был разработан удобный фреймворк для написания асинхронного кода. В докладе будет рассмотрено то, как он устроен и как со временем эволюционировал. Разберемся, как с помощью наших примитивов решать проблемы, часто встречающиеся в асинхронном программирование; будут примеры удачного и неудачного использования. Отдельно остановимся на сравнении получившихся средств с тем, что было добавлено в С++11.
This document discusses Java generics, collections, streams and related concepts. It provides code examples of:
- Defining generic classes and methods
- Using common collection interfaces like List, Set, Map and their implementations
- Working with streams to perform operations on data in a declarative way
- Using lambda expressions and functional interfaces with streams
Догнать и перегнать boost::lexical_castRoman Orlov
Разбор нестандартной реализации преобразования целого числа в строку без использования циклов и рекурсивных вызовов времени исполнения - только рекурсия на этапе компиляции
Фитнес для вашего кода: как держать его в формеIlia Shishkov
C++ Россия 2017
Во время моего выступления мы поговорим о принципе "Minimize coupling, maximize cohesion". Обсудим, что это такое и что значат эти непонятные слова. Кроме того на приближенном к реальности примере мы рассмотрим, как, применяя указанный принцип, можно держать ваш код в форме, чтобы он был готов ко всем неожиданностям, которые подстерегают ваш проект в течение его жизни.
Павел Сушин «Асинхронное программирование на С++: callbacks, futures, fibers»Platonov Sergey
За время работы над проектом был разработан удобный фреймворк для написания асинхронного кода. В докладе будет рассмотрено то, как он устроен и как со временем эволюционировал. Разберемся, как с помощью наших примитивов решать проблемы, часто встречающиеся в асинхронном программирование; будут примеры удачного и неудачного использования. Отдельно остановимся на сравнении получившихся средств с тем, что было добавлено в С++11.
This document discusses Java generics, collections, streams and related concepts. It provides code examples of:
- Defining generic classes and methods
- Using common collection interfaces like List, Set, Map and their implementations
- Working with streams to perform operations on data in a declarative way
- Using lambda expressions and functional interfaces with streams
El documento describe el progreso de un programa de mejora continua para el desarrollo de programas educativos. Explica que se realizó un análisis de necesidades, se diseñó un plan de acción y ahora se está implementando con el objetivo de mejorar los resultados para los estudiantes.
Для чтения не требуется почти никаких предварительных знаний, по крайней мере, ничего выходящего за рамки школьной программы. Исключение составляет только последний раздел.
This document discusses input/output (I/O) and file system access in Java. It covers the java.io.File and java.nio.file.Path classes for representing files and directories, and how to use them to check file/directory attributes, resolve paths, and manipulate files and directories by creating, deleting, copying, moving, etc. It also covers the java.io streams for byte and character I/O including InputStream, OutputStream, Reader, and Writer. Common stream operations like copying from input to output streams are demonstrated.
Юрий Ефимочев, Компилируемые в реальном времени DSL для С++ Sergey Platonov
В последнее время в промышленной разработке ПО особую популярность обретают Domain-Specific Lanugages (DSL). Они драматически упрощают разработку и дают возможность “программировать” не только программистам, но и пользователям прикладных программ.
В своем докладе я расскажу об опыте использования DSL применительно к С++, причем упор будет сделан на производительность кода DSL, и его мгновенную “встраиваемость” в запущенную программу путем компиляции DSL-кода в нативный код с помощью инструментария LLVM.
Функциональное программирование с использованием библиотеки fp-ts | Odessa Fr...OdessaFrontend
Дмитрий Ховрич рассказывает как использовать строгую типизацию TypeScript и писать надёжный код в функциональном стиле. А также делится знаниями как использовать функторы и монады в ежедневной фронтенд разработке.
Андрей Карпов
Вы узнаете, что такое статический анализ кода и историю его развития. Узнаете, как эффективно применять инструменты статического анализа в своей работе, увидите практические примеры использования этой методологии. Доклад ориентирован на программистов, использующих языки Си/Си++, но будет полезен всем
Статический и динамический полиморфизм в C++, Дмитрий ЛевановYandex
На примере некоторых архитектурных решений Крипты Дмитрий расскажет о способах реализации полиморфного поведения в программах на C++, о преимуществах и недостатках этих способов, а также о новых возможностях C++11.
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive function. Exercise causes chemical changes in the brain that may help protect against mental illness and improve symptoms.
Точечная оценка. Определение
Пример 1
Свойства точечных оценок
Несмещенность
Пример 2
Состоятельность
Эффективность
Асимптотическая нормальность
Робастность
Описательная статистика, цели. Вариационный ряд
Полигон частот
Гистограмма
Гистограмма, пример. Выбор числа интервалов
Выборочные характеристики
Характеристики положения и рассеяния
Выборочные характеристики двумерной выборки
Основные задачи математической статистики. Примеры задач
Выборка.Выборочное пространство. Примеры
Простой случайный выбор. Реальные виды выборов
Функция распределения выборки
Эмпирическая вероятностная мера
Теорема Гливенко-Кантелли
This document defines continuity and uniform continuity of functions. A function f is continuous on a set S if small changes in the input x result in small changes in the output f(x). A function is uniformly continuous if the same relationship holds for all inputs and outputs simultaneously, not just for a fixed input. Several examples are provided to illustrate the difference. The key difference is that a continuous function may depend on the specific input point, while a uniformly continuous function does not. Functions that satisfy a Lipschitz inequality are proven to be uniformly continuous.
This document discusses algorithms for solving the coin change problem of finding the minimum number of coins needed to make a given monetary value. It describes greedy, recursive, and dynamic programming approaches. The greedy algorithm works optimally for coin denominations of 10, 5, 1 by always selecting the highest value coin first. However, the greedy approach does not always give the optimal solution in general. Dynamic programming improves on the recursive solution by storing intermediate results in an array to avoid recomputing the same subproblems.
The document discusses recurrences and methods for solving them. It covers:
1) Divide-and-conquer algorithms can often be modeled with recurrences. Examples include merge-sort and matrix multiplication.
2) Common methods for solving recurrences are substitution, iteration/recursion trees, and the master method. The master method provides a general solution for recurrences of the form T(n) = aT(n/b) + nc.
3) Strassen's matrix multiplication algorithm improves on the naive O(n^3) time by using a recurrence with a=7 to achieve O(n^2.81) time via the master method. Changing variables can sometimes simplify recurrences.
Диаграммы Юнга, плоские разбиения и знакочередующиеся матрицыDEVTYPE
Сколько есть способов разбить натуральное число в сумму нескольких слагаемых, если суммы, отличающиеся только порядком слагаемых, считаются одинаковыми? Оказывается, что на этот, казалось бы, элементарный вопрос нет простого ответа. Зато теория, начинающаяся с этого вопроса, оказывается очень интересной, а ее результаты находят применение в самых разных разделах математики и математической физики.
Настоящая брошюра написана по материалам лекций, прочитанных автором на летней школе «Современная математика» в Дубне в июле 2013 года. Она рассчитана на старшеклассников и студентов младших курсов.
This document introduces asymptotic notation used to analyze the runtime of algorithms. Big O notation describes upper bounds on function growth, while Ω notation describes lower bounds. Functions are asymptotically equivalent (Θ) if they have matching upper and lower bounds. Limits can be used to establish relationships between asymptotic classes in some cases, but not always - examples show membership in a class does not necessarily imply limits exist.
Опечатки в слайдах на видео: в псевдокоде алгоритма решения непрерывной задачи о рюкзаке предметы должны сортироваться по убыванию (а не возрастанию) удельной стоимости.
- Определение чисел Фибоначчи, скорость роста
- Общая формула, экспоненциальная скорость роста
- Наивный алгоритм и анализ его времени работы
- Более быстрый алгоритм и анализ его времени работы, заключение
- Более детальный анализ алгоритма вычисления чисел Фибоначчи
- Определения O(⋅), преимущества и недостатки их использования для оценки времени работы алгоритмов
- Определения Ω(⋅),Θ(⋅),o(⋅), общие правила сравнения скорости роста стандартных функций
- Графики нескольких часто используемых функций
- Скорости часто используемых функций на практике, заключение
10. Операторы с особым порядком вычисления
int main () {
int a = 0;
int b = 5;
(a != 0) && (b = b / a);
(a == 0) || (b = b / a);
foo() && bar ();
foo() || bar ();
foo(), bar ();
}
// no lazy semantics
Tribool operator &&( Tribool const& b1 ,
Tribool const& b2) {
...
}
10/10