Jun 08, 2014 15:28
А чему стоит учить не самых слабых первокурсников (программирование и Computer Science) в первом семестре на курсе "Основы дискретной математики и математической логики"?
Уточнение: алгоритмам их будут учить много на отдельном курсе. Отдельный курс "математическая логика и теория алгоритмов" будет позже.
Leave a comment
Comments 25
Reply
Reply
Ну может быть. :) Но вообще мне моё матмеховское образование очень даже нравится.
Reply
Reply
* базовым представлениям о множествах и операциях над ними,
* было бы очень здорово научить их строить логические утверждения с кванторами существования и всеобщности, и правильно их отрицать,
* очень базовой комбинаторике (никаких чисел Каталана, лучше они поймут нормально, почему у байта 256 различных значений, и что сумма C(n, k) это 2^n, а также, что 15! это очень много),
* очень простым свойствам графов (базовые представления о связности, планарности и пр), с какими-нибудь наглядными объяснениями из повседневной жизни, зачем это все,
* было бы здорово научить их писать рекуррентные формулы и доказывать что-нибудь по индукции, желательно не про числа, а, скажем, про деревья.
Да, я ставлю на то, что они после школы этого не умеют, и надо учить как будто с нуля.
Reply
Reply
Reply
Reply
Reply
Reply
https://www.dropbox.com/s/hme5d0zgqckdxad/discrete.pdf
Reply
Reply
Reply
Еще у меня вопрос по компоновке:
Что мотивирует рассказывать сложность алгоритма через разрешающие деревья, кроме доказательства нижней оценки для сортировки? Это ведь довольно неестественная модель, ее трудно связать с реальностью.
Reply
Reply
Leave a comment