Запитання з тегом «didactics»

Дидактичні засоби та методи, особливо придатні для навчання інформатиці

13
Як обдурити евристику "спробувати деякі тестові випадки": Алгоритми, які здаються правильними, але насправді є невірними
Щоб спробувати перевірити правильність алгоритму для якоїсь проблеми, звичайним початковим пунктом є спробувати запустити алгоритм вручну на декількох простих тестових випадках - спробуйте його на кількох прикладах проблемних випадків, включаючи кілька простих "кутових випадків" ". Це чудова евристика: це чудовий спосіб швидко вилучити багато неправильних спроб алгоритму та зрозуміти, чому …

5
Які причини вивчати різні алгоритми / структури даних, що відповідають одній цілі?
Мене цікавить це питання ще з часів студентства. Це загальне питання, але я докладно поясню приклади нижче. Я бачив багато алгоритмів - наприклад, для проблем з максимальним потоком я знаю близько 3 алгоритмів, які можуть вирішити проблему: Ford-Fulkerson, Edmonds-Karp & Dinic, причому Dinic має найкращу складність. Для структур даних - …

2
на тему: "Про жорстокість дійсно викладання обчислювальної науки"
Дійкстра у своєму нарисі « Про жорстокість справді викладання обчислювальної науки» робить наступну пропозицію щодо вступного курсу програмування: З одного боку, ми навчаємо, як виглядає предикатне числення, але ми робимо це зовсім інакше, ніж філософи. Для того, щоб навчити програміста-початківця до маніпулювання неінтерпретованими формулами, ми навчаємо його більше як булева …

3
Навчання NP-повноті - скорочення Turing проти скорочення Карпа
Мене цікавить питання, як найкраще навчати NP-повноті спеціальностей з інформатики. Зокрема, чи слід вчити цього за допомогою скорочення Карпа чи використання скорочень Тьюрінга? Я відчуваю, що поняття завершеності NP і скорочення - це те, чого повинен вивчити кожен основний інформатик. Однак, навчаючи NP-повноти, я помітив, що використання скорочення Карпа має …

4
Як обдурити евристичну перевірку сюжету?
Над тут , Дейв Кларк запропонував , що для того , щоб порівняти асимптотический зростання ви повинні побудувати функції під руку. Як теоретично схильний інформатик, я називаю (редагую) це водообіг як сюжет ніколи не є доказом. По-друге, я повинен погодитися, що це дуже корисний підхід, який навіть іноді недостатньо використовується; …

3
Який інтуїтивний спосіб пояснити та зрозуміти Закон Де Моргана?
Закон Де Моргана часто вводиться у вступній математиці для курсу інформатики, і я часто бачу це як спосіб перетворити твердження з ІЛІ на АБО запереченням термінів. Чи є більш інтуїтивне пояснення, чому це працює, а не просто згадувати таблиці правди? Для мене це як використання чорної магії, що є кращим …

4
Кіксорт пояснив дітям
Минулого року я читав фантастичний документ на тему "Квантова механіка для дитячого саду" . Папір був непростим. Зараз мені цікаво, як пояснити хитрощі найпростішими можливими словами. Як я можу довести (або принаймні рукохвиль), що середня складність становить , і які найкращі та найгірші випадки стосуються до класу дитячих садків? Або …

3
Логічні ворота з буденних матеріалів
Логічні ворота - це абстрактний пристрій, який можна реалізувати за допомогою електромагнітних реле, вакуумних трубок або транзисторів. Ці реалізації були успішними в обчисленні частково завдяки різним властивостям ланцюговості, довговічності та розміру, що перевищує їх основну бінарну стабільність. Вони також добре працюють, тому що електроенергія - це джерело енергії, яке досить …

6
Які частини лінійної алгебри використовуються в інформатиці?
Я читав лінійну алгебру та її додатки, щоб допомогти зрозуміти матеріал з інформатики (головним чином машинне навчання), але мене хвилює, що багато інформації не корисно для CS. Наприклад, знання ефективного розв’язання систем лінійних рівнянь не здається дуже корисним, якщо ви не намагаєтеся запрограмувати нове рішення для рівнянь. Крім того, у …

6
Знаходження максимуму XOR двох чисел в інтервалі: чи можемо ми зробити краще, ніж квадратичне?
Припустимо, нам дано два числа і і ми хочемо знайти для l \ le i, \, j \ le r .lllrrrmax(i⊕j)max(i⊕j)\max{(i\oplus j)}l≤i,j≤rl≤i,j≤rl\le i,\,j\le r Наївний алгоритм просто перевіряє всі можливі пари; наприклад, у рубінах у нас буде: def max_xor(l, r) max = 0 (l..r).each do |i| (i..r).each do |j| if …

1
Поради щодо навчання за допомогою живого кодування
Я беру участь у курсі програмування та алгоритмів першого курсу. У нещодавній лекції я вирішив представити матеріал за допомогою прямого кодування , що по суті означало, що я сиджу за клавіатурою і пишу код та оцінюю його, використовуючи emacs для полегшення процесу. Це було досить вдало, і студенти прокоментували, наскільки …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.