![Computer Science Center](/img/default-banner.jpg)
- Видео 903
- Просмотров 12 359 136
Computer Science Center
Россия
Добавлен 14 апр 2015
На этом канале размещены видеозаписи лекций и докладов преподавателей Computer Science Center, короткие тематические записи на интересные темы в компьютерных науках или программировании. Мы публикуем материалы для ИТ-специалистов, студентов и школьников, интересующихся программированием и математикой.
12. Семантические зависимости для моделей памяти (2/2)
compscicenter.ru/
Лекция №12 курса «Семантика языков программирования» (весна 2022).
Преподаватель - Евгений Моисеенко
Страница лекции на сайте CS центра: bit.ly/3wSQPIo
Лекция №12 курса «Семантика языков программирования» (весна 2022).
Преподаватель - Евгений Моисеенко
Страница лекции на сайте CS центра: bit.ly/3wSQPIo
Просмотров: 10 986
Видео
11. Семантические зависимости для моделей памяти (1/2). Структуры событий
Просмотров 2,4 тыс.Год назад
compscicenter.ru/ Лекция №11 курса «Семантика языков программирования» (весна 2022). Преподаватель - Евгений Моисеенко Страница лекции на сайте CS центра: bit.ly/3wSQPIo
10. Декларативные модели памяти (2/2)
Просмотров 1,8 тыс.Год назад
compscicenter.ru/ Лекция №10 курса «Семантика языков программирования» (весна 2022). Преподаватель - Антон Подкопаев Страница лекции на сайте CS центра: bit.ly/3wSQPIo
9. Декларативные модели памяти (1/2)
Просмотров 1 тыс.Год назад
compscicenter.ru/ Лекция №9 курса «Семантика языков программирования» (весна 2022). Преподаватель - Евгений Моисеенко Страница лекции на сайте CS центра: bit.ly/3wSQPIo
8. Введение в слабые модели памяти
Просмотров 1,7 тыс.Год назад
compscicenter.ru/ Лекция №8 курса «Семантика языков программирования» (весна 2022). Преподаватель - Антон Подкопаев Страница лекции на сайте CS центра: bit.ly/3wSQPIo
7. Coq. Семантика малого шага, логика Хоара
Просмотров 702Год назад
compscicenter.ru/ Лекция №7 курса «Семантика языков программирования» (весна 2022). Преподаватель - Егор Намаконов Страница лекции на сайте CS центра: bit.ly/3wSQPIo
6. Семантика малого шага, логика Хоара
Просмотров 1,3 тыс.Год назад
compscicenter.ru/ Лекция №6 курса «Семантика языков программирования» (весна 2022). Преподаватель - Антон Подкопаев Страница лекции на сайте CS центра: bit.ly/3wSQPIo
5. Coq. Разбор д-ва терминируемости алгоритма Евклида
Просмотров 686Год назад
compscicenter.ru/ Лекция №5 курса «Семантика языков программирования» (весна 2022). Преподаватель - Антон Подкопаев Страница лекции на сайте CS центра: bit.ly/3wSQPIo
4. Множественные цели в Coq. Д-во корректности Constant Folding
Просмотров 668Год назад
compscicenter.ru/ Лекция №4 курса «Семантика языков программирования» (весна 2022). Преподаватель - Антон Подкопаев Страница лекции на сайте CS центра: bit.ly/3wSQPIo
3. Семантика большого шага для императивного языка
Просмотров 1,4 тыс.Год назад
compscicenter.ru/ Лекция №3 курса «Семантика языков программирования» (весна 2022). Преподаватель - Антон Подкопаев Страница лекции на сайте CS центра: bit.ly/3wSQPIo
2. Введение в Coq
Просмотров 2,4 тыс.Год назад
compscicenter.ru/ Лекция №2 курса «Семантика языков программирования» (весна 2022). Преподаватель - Антон Подкопаев Страница лекции на сайте CS центра: bit.ly/3wSQPIo
1. Семантика и её значение
Просмотров 16 тыс.Год назад
compscicenter.ru/ Лекция №1 курса «Семантика языков программирования» (весна 2022). Преподаватель - Антон Подкопаев Страница лекции на сайте CS центра: bit.ly/3wSQPIo
13. Быстрое преобразование Фурье
Просмотров 6 тыс.Год назад
compscicenter.ru/ Лекция №13 курса «Дополнительные главы алгоритмов, часть 2» (весна 2022) Преподаватель - Павел Маврин Страница лекции на сайте CS клуба: bit.ly/3M75btf
12. Совершенное паросочетание минимальной стоимости
Просмотров 1,3 тыс.Год назад
compscicenter.ru/ Лекция №12 курса «Дополнительные главы алгоритмов, часть 2» (весна 2022) Преподаватель - Павел Маврин Страница лекции на сайте CS клуба: bit.ly/3M75btf
11. Линейное программирование
Просмотров 2,2 тыс.Год назад
compscicenter.ru/ Лекция №11 курса «Дополнительные главы алгоритмов, часть 2» (весна 2022) Преподаватель - Михаил Иванов Страница лекции на сайте CS клуба: bit.ly/3M75btf
9. Дерево ван Эмде Боаса. Быстрый цифровой бор
Просмотров 858Год назад
9. Дерево ван Эмде Боаса. Быстрый цифровой бор
8. Потоки в транспортных сетях, часть 2
Просмотров 622Год назад
8. Потоки в транспортных сетях, часть 2
12. Алгоритмы во внешней памяти, часть 2
Просмотров 3,3 тыс.Год назад
12. Алгоритмы во внешней памяти, часть 2
Работа с памятью в Си++? Это вы серьёзно? Кто понимает оценит бредовость
Классная лекция! Маленький момент - насколько я знаю, современные видеокарты - по крайней мере некоторые из них - префетч для чтений текстур не делают, т.к. для них задержка с чтением не так критична, как для CPU. Они просто могут пойти работать над другими пикселами пока данные грузятся из памяти. Но текселы там всё равно "сворачиваются" (swizzle) как здесь показали, т.к. это помогает с доступом к кэшу, плюс память читается большими блоками по несколько текселей, что даёт похожий на префетч эффект без префетча. (Ну и когда текстура уже в кэше, ей и префетч не нужен.)
Предлагаю книгу "Графомания" (Деревенец О.В.). Алгоритмы на графах реализованы на языке Delphi (Object Pascal) Все исходники и контрольные примеры в наличии. Скачивается бесплатно. Содержание: Знакомство с объектами, отношениями и множествами Представление объектов в языке Delphi Представление множеств, операции с множествами Понятие о сложности (трудоёмкости) алгоритмов Задачи на множествах: • разбиение множества на подмножества; • задача о наименьшем разбиении (ЗНР); • задача о наименьшем покрытии (ЗНП). Представление отношений графами Программная реализация графов, ввод и вывод графов Группа задач на достижимость: • взаимная достижимость вершин; • кратчайшие пути между вершинами; • выделение сильно связанных компонент. Группа задач на размещение: • независимые вершины и клики; • доминирующие множества; • раскраски; • центры; • p-центры; • p-медианы. Остовные деревья Группа задач о потоках: • максимальный поток в сети; • поток, ограниченный сверху и снизу; • минимальная стоимость потока. Паросочетания: • паросочетание в двудольном графе; • паросочетание в произвольном графе. Цикл Эйлера и задача почтальона: • на неориентированном графе; • на орграфе. Задачи Гамильтона и коммивояжёра: • разомкнутая задача Гамильтона; • замкнутая задача Гамильтона (цикл); • комбинирование методов для задач Гамильтона; • замкнутая и разомкнутая задачи коммивояжёра.
Хороший препод, жаль лекция не полная
Спасибо за отличное видео. Как программист с 50-летним опытом, скажу, что уже около 40 лет мы утратили понимание алгоритмов в том смысле, о котором я пишу в своих статьях на Medium: "Bagels and Muffins of Programming or How Easy It Is to Convert a Bagel into a Black Hole" или на Хабре: "Бублики и Коржики Программирования". Алгоритмически мыслить и жить в алгоритмо-центричном мире программирования и писать программы-коржики - это удел одиночек. Сегодняшний мир программирования все больше фокусируется на кодо-центричном подходе, где алгоритмы не рассматриваются как отдельные сущности. Этот переход привел к значительным изменениям в подходах к разработке и сопровождению программного обеспечения. Когда-то алгоритмы были сердцем любой программы, обеспечивая четкую и понятную структуру для разработки. Они помогали нам строить логичные и эффективные решения. Однако с ростом популярности высокоуровневых языков программирования и фреймворков, акцент сместился на быстрое написание кода и внедрение новых функций, часто в ущерб структурированному алгоритмическому мышлению. Сегодня все чаще встречаются программы-бублики, где код существует отдельно от алгоритма, создавая внутренние несогласованности и сложности в поддержке. В таких условиях трудно добиться стабильности и надежности программного обеспечения. Возвращение к алгоритмо-центричному подходу и создание программ-коржиков, где алгоритм и код интегрированы, могут значительно улучшить качество программного обеспечения. Это не только упростит тестирование и поддержку, но и позволит создавать более гибкие и устойчивые системы. Я надеюсь, что больше разработчиков начнут осознавать важность алгоритмов и перейдут к более структурированному и осмысленному подходу к программированию. Только так мы сможем создать программное обеспечение, которое будет надежным, понятным и легко поддерживаемым.
спасибо)
Спасибо ❤
Спасибо ❤
Спасибо ❤
Отличная лекция и отличный лектор. Пол дня потратил отсматривая материал по теме, здесь всё на высоте: есть и понятный поверхностный обзор, дающий понять, куда копать дальше, и код вполне себе готового языка на GutHub.
Назовите пожалуйста пример множества промежуточной мощности между алеф нуль и континуум, при условии отвержения континуум-гипотезы
Многопоточность, это явно yе для СPP. А автору надо бы книжки почитать, ну хотя бы для чайников Скольеко же таких лекторов на просторах интернета развелось.. и похоже будет ещё большею Увы увы
Автор ноль полный, балабольство в стиле UML "архитекторов", уже должно любого у кого все ОК с логикой насторожить понятие - плохая/хорошая архитектура. Что такое плохая, что такой хорошая? Критерий оценки не задан, и как я понимаю этот персонаж даже не не осознает что исспользовать такие термины не имеет смысла. Далее всё в таком же стиле.
На главный вопрос зачем всё делать через задний проход... не нужно это.. это стремление всё усложнить на ровном месте Компьютер он императивный на низовом уровне
лемма неймана пирсона с 20:57
актутуально на 2024?
Лучше делать лекцию со схемами и диаграммами чем с кодом. За кодом трудно визуально следить. Студенты не понимают что делает чел просто печатает и пиздец. А озвучка процесса не позволяет понимать происходящее. Оно и понятно. Писать код и грамотно озвучивать трудно.
Стоило бы получше объяснять.
Замечание насчет строк в кодировке UTF-8. Насколько могу судить, Алексей *не совсем* прав, когда говорит, что строки в этой кодировке могут иметь внутри нулевой байт. Схема кодирования этого не допускает. Любые символы, которые представляются двумя и более байтами, в первом байте в двух старших битах будут иметь '11', а в следующих байтах - '10', то есть нулевой байт там встретиться не может; в однобайтовом символе 0 может содержаться, но тогда это и есть символ 'NUL', то есть тот самый маркер конца строки. Собственно, это одна из причин, по которой строки в кодировке UTF-8 без проблем обрабатываются функциями стандартной библиотеки C, которые, казалось бы, рассчитаны на работу с ASCII (например, strstr() сработает независимо от того, обе строки в UTF-8 или обе строки в ASCII). Чисто теоретически, можно представить ситуацию, когда внутри UTF-8 строки встречается нулевой байт, после которого строка продолжается и содержит другие байты. Тогда эта строка не сможет быть обработана (целиком) функциями стандартной библиотеки C. Однако это то же самое, когда внутри строки в однобайтовой кодировке встречается нулевой байт. Такая строка тоже будет некорректно обрабатываться функциями стандартной библиотеки C. На практике лично мне не приходилось сталкиваться с ситуациями, когда "неповрежденные" строки в кодировке UTF-8 содержали внутри нулевой байт. Видимо, наиболее вероятные случаи, когда можно столкнуться с чем-то подобным - вывод утилит типа xargs с флагом -0 или find с флагом -print0.
А если будет не 2 ряда (x.y), а например 45 рядов? Тогда сложность не 2^n, а 45^n. И тогда вариантов будет при ключе в 8 бит - 45^8 = 16*10^12 на полный брут
блять... Трёп один... Есть нормальная инфа о том, как сделать шаблон для оформления по ГОСТу??? Это самое важное, что тпебуют, а не эту вот ликбезовскую хуйню.
Очевидно, лектор знающий и опытный практик... но изложение сумбурное. Рассказывает не лекцию для студентов, а семинар по случаю 30-летия отдела для старых друзей, которые типа в теме.
Для чего это нужно программисту - может кто-нибудь объяснить?
Смотрел лекцию по асинхронным процессам и вот там такое встретилось - если функция заблокировалась, например, функция приема чего то там по сети, а ни одного клиента нет, то мы висим и ждем, и тогда происходит вот что - операционная система понимает это и чтоб не терять время и не висеть просто так, она делает context switch (переключение контекста). И вот у меня такой вопрос - А как она понимает, что вот уже пора делать это переключение контекста? Там зашита какая то величина таймера? Ну типа - любой функции разрешено висеть не больше 1 секунды, если 1 секунда прошла, а функция не разморозилась (так как она все еще ожидает что то там по сети, а это что то там так и не приходит и не приходит), то операционная система говорит - слышь ты, хорош тут висеть, я тебя временно снимаю с процессора, там есть другие задачи. То есть мне не понятно конкретно вот что - кто решает сколько можно висеть функции на блокировке ? Это зашито прям в ядре ОС?
Почему в теории множеств когда дело доходит до формул ничего нельзя понять?
Сумбурно. Обозначения не введены, определения не даны... Лектор с темы на тему перепрыгивает, не выстраивая в единый поток. Хотя ясно, что практика у лектора большая и опыт большой.
9я минута. Кроме перечисленных шкал есть ещё абсолютная.
И шкала равных отношений
Предлагаю книгу "Графомания" (Деревенец О.В.). Алгоритмы на графах реализованы на языке Delphi (Object Pascal) Все исходники и контрольные примеры в наличии. Скачивается бесплатно. Содержание: Знакомство с объектами, отношениями и множествами Представление объектов в языке Delphi Представление множеств, операции с множествами Понятие о сложности (трудоёмкости) алгоритмов Задачи на множествах: • разбиение множества на подмножества; • задача о наименьшем разбиении (ЗНР); • задача о наименьшем покрытии (ЗНП). Представление отношений графами Программная реализация графов, ввод и вывод графов Группа задач на достижимость: • взаимная достижимость вершин; • кратчайшие пути между вершинами; • выделение сильно связанных компонент. Группа задач на размещение: • независимые вершины и клики; • доминирующие множества; • раскраски; • центры; • p-центры; • p-медианы. Остовные деревья Группа задач о потоках: • максимальный поток в сети; • поток, ограниченный сверху и снизу; • минимальная стоимость потока. Паросочетания: • паросочетание в двудольном графе; • паросочетание в произвольном графе. Цикл Эйлера и задача почтальона: • на неориентированном графе; • на орграфе. Задачи Гамильтона и коммивояжёра: • разомкнутая задача Гамильтона; • замкнутая задача Гамильтона (цикл); • комбинирование методов для задач Гамильтона; • замкнутая и разомкнутая задачи коммивояжёра.
Предлагаю книгу "Графомания" (Деревенец О.В.). Алгоритмы на графах реализованы на языке Delphi (Object Pascal) Все исходники и контрольные примеры в наличии. Скачивается бесплатно. Содержание: Знакомство с объектами, отношениями и множествами Представление объектов в языке Delphi Представление множеств, операции с множествами Понятие о сложности (трудоёмкости) алгоритмов Задачи на множествах: • разбиение множества на подмножества; • задача о наименьшем разбиении (ЗНР); • задача о наименьшем покрытии (ЗНП). Представление отношений графами Программная реализация графов, ввод и вывод графов Группа задач на достижимость: • взаимная достижимость вершин; • кратчайшие пути между вершинами; • выделение сильно связанных компонент. Группа задач на размещение: • независимые вершины и клики; • доминирующие множества; • раскраски; • центры; • p-центры; • p-медианы. Остовные деревья Группа задач о потоках: • максимальный поток в сети; • поток, ограниченный сверху и снизу; • минимальная стоимость потока. Паросочетания: • паросочетание в двудольном графе; • паросочетание в произвольном графе. Цикл Эйлера и задача почтальона: • на неориентированном графе; • на орграфе. Задачи Гамильтона и коммивояжёра: • разомкнутая задача Гамильтона; • замкнутая задача Гамильтона (цикл); • комбинирование методов для задач Гамильтона; • замкнутая и разомкнутая задачи коммивояжёра.
Предлагаю книгу "Графомания" (Деревенец О.В.). Алгоритмы на графах реализованы на языке Delphi (Object Pascal) Все исходники и контрольные примеры в наличии. Скачивается бесплатно. Содержание: Знакомство с объектами, отношениями и множествами Представление объектов в языке Delphi Представление множеств, операции с множествами Понятие о сложности (трудоёмкости) алгоритмов Задачи на множествах: • разбиение множества на подмножества; • задача о наименьшем разбиении (ЗНР); • задача о наименьшем покрытии (ЗНП). Представление отношений графами Программная реализация графов, ввод и вывод графов Группа задач на достижимость: • взаимная достижимость вершин; • кратчайшие пути между вершинами; • выделение сильно связанных компонент. Группа задач на размещение: • независимые вершины и клики; • доминирующие множества; • раскраски; • центры; • p-центры; • p-медианы. Остовные деревья Группа задач о потоках: • максимальный поток в сети; • поток, ограниченный сверху и снизу; • минимальная стоимость потока. Паросочетания: • паросочетание в двудольном графе; • паросочетание в произвольном графе. Цикл Эйлера и задача почтальона: • на неориентированном графе; • на орграфе. Задачи Гамильтона и коммивояжёра: • разомкнутая задача Гамильтона; • замкнутая задача Гамильтона (цикл); • комбинирование методов для задач Гамильтона; • замкнутая и разомкнутая задачи коммивояжёра.
Предлагаю книгу "Графомания" (Деревенец О.В.). Алгоритмы на графах реализованы на языке Delphi (Object Pascal) Все исходники и контрольные примеры в наличии. Скачивается бесплатно. Содержание: Знакомство с объектами, отношениями и множествами Представление объектов в языке Delphi Представление множеств, операции с множествами Понятие о сложности (трудоёмкости) алгоритмов Задачи на множествах: • разбиение множества на подмножества; • задача о наименьшем разбиении (ЗНР); • задача о наименьшем покрытии (ЗНП). Представление отношений графами Программная реализация графов, ввод и вывод графов Группа задач на достижимость: • взаимная достижимость вершин; • кратчайшие пути между вершинами; • выделение сильно связанных компонент. Группа задач на размещение: • независимые вершины и клики; • доминирующие множества; • раскраски; • центры; • p-центры; • p-медианы. Остовные деревья Группа задач о потоках: • максимальный поток в сети; • поток, ограниченный сверху и снизу; • минимальная стоимость потока. Паросочетания: • паросочетание в двудольном графе; • паросочетание в произвольном графе. Цикл Эйлера и задача почтальона: • на неориентированном графе; • на орграфе. Задачи Гамильтона и коммивояжёра: • разомкнутая задача Гамильтона; • замкнутая задача Гамильтона (цикл); • комбинирование методов для задач Гамильтона; • замкнутая и разомкнутая задачи коммивояжёра.
Предлагаю книгу "Графомания" (Деревенец О.В.). Алгоритмы на графах реализованы на языке Delphi (Object Pascal) Все исходники и контрольные примеры в наличии. Скачивается бесплатно. Содержание: Знакомство с объектами, отношениями и множествами Представление объектов в языке Delphi Представление множеств, операции с множествами Понятие о сложности (трудоёмкости) алгоритмов Задачи на множествах: • разбиение множества на подмножества; • задача о наименьшем разбиении (ЗНР); • задача о наименьшем покрытии (ЗНП). Представление отношений графами Программная реализация графов, ввод и вывод графов Группа задач на достижимость: • взаимная достижимость вершин; • кратчайшие пути между вершинами; • выделение сильно связанных компонент. Группа задач на размещение: • независимые вершины и клики; • доминирующие множества; • раскраски; • центры; • p-центры; • p-медианы. Остовные деревья Группа задач о потоках: • максимальный поток в сети; • поток, ограниченный сверху и снизу; • минимальная стоимость потока. Паросочетания: • паросочетание в двудольном графе; • паросочетание в произвольном графе. Цикл Эйлера и задача почтальона: • на неориентированном графе; • на орграфе. Задачи Гамильтона и коммивояжёра: • разомкнутая задача Гамильтона; • замкнутая задача Гамильтона (цикл); • комбинирование методов для задач Гамильтона; • замкнутая и разомкнутая задачи коммивояжёра.
Если знаешь материал - всё понятно. Если не знаешь - вы вряд-ли что-то поймёте из этой лекции.
Сильно отстает картинка от звука. В середине звук сильно рябит. Очень сложно слушать и воспринимать. А лекция очень интересная! Рассказывает много нужных и интересных вещей.
Уважаемый Кирилл! Спасибо за очень интересную лекцию. Однако не соглашусь с утверждением, что процесс - это виртуальный компьютер внутри физического компьютера. Это как раз-таки виртуальная машина. А процесс - это по сути элемент операционной системы, который может "жить" самостоятельно внутри ОС и думать, что ОС не существует, но просить у нее ресурсы, как ребенок у родителей. А ОС уже ставит ограничения на действия "ребенка".
Ахренеть, как будто доктор Фортран из детства стал блогером. уууух флешбеки)
О бесплатных и полезных программах лично для меня и про мой опыт программирования ruclips.net/video/IX5CDBR0-5o/видео.html
Вот это подача!
И снова с вами Марат Внезапный!
Осторожно! В данном видео количество внезапностей на единицу времени превышает Порог Максимальных Внезапностей (ПМВ)!
И снова с вами Марат Внезапный! 😆
это не API это коннекторы дурачок.
У простых блоггеров как то поинформативнее видео получаются.
Чудесная подача! Спасибо за выправление звука!
1:01:02 - замечание: внутри строки, закодированной в utf-8, нулевой байт встретиться НЕ может.
Где можно домашки посмотреть?
Свёртка - князь нерегулярностей. Это лучшее, что есть на Земле.
Многие критикуют, но мне понравилось и помогло. Я не новичок и все оказалось понятным, а в видео достаточная для меня детализация. Я получил ответы на все свои вопросы касательно аннотаций, спасибо