Алгоритмы и структуры данных (syllabus): различия между версиями

Материал из Поле цифровой дидактики
Строка 26: Строка 26:


== Цель, результаты освоения дисциплины ==
== Цель, результаты освоения дисциплины ==
В результате изучения данной дисциплины студенты будут иметь представление о современных алгоритмических языках, о способах записи [[алгоритм]]ов и конструирования программ, основах объектного подхода в программировании
; Цель
: теоретические знания и практический опыт в области основ алгоритмизации задач, классификации языков программирования, типов данных, структур данных, взаимосвязь алгоритмов и структур данных, особенностей реализации алгоритмов и типов данных в языках блочного программирования [[Scratch]], [[Snap!]], [[GP]]


В результате освоения дисциплины слушатель должен:
; Знать:
; Знать
: Основные понятия, связанные с миром алгоритмов и структур данных См.  [[:Категория:Понятие]]
: Основные понятия, связанные с миром алгоритмов и структур данных См.  [[:Категория:Понятие]]
:  
: основы алгоритмизации задач, структуры данных;
; Уметь:
: типы данных, структуры данных;
: пользоваться различными пространствами, волшебными словами и командами языка ask# внутри Semantic MediaWiki  
: методы и алгоритмы поиска и сортировки данных;
: уметь использовать различные типы данных внутри Semantic MediaWiki
; Уметь  
: уметь использовать визуальные блоки Scratch и Snap! на вики-страницах для представления алгоритмов
: обращаться к внешним и внутренним данным из среды [[Semantic MediaWiki]], уметь использовать различные типы данных внутри Semantic MediaWiki см. [[:Категория:Dataset]]
: представлять программы в виде псевдокода и  
: обмениваться проектами и блоками программ в [[Snap!]]
: сравнивать и объединять статьи о языках программирования [[Taxonomic_sandbox]]
: импортировать и экспортировать данные в среду визуального программирования [[Snap!]]
: проектировать и программировать  линейные и разветвляющиеся структуры алгоритмов;
: планировать процесс реализации алгоритма при помощи псевдокода и диаграмм - [[:Категория:Diagrams]]
: планировать процесс реализации алгоритма при помощи псевдокода и диаграмм - [[:Категория:Diagrams]]
см. данные См. [[:Категория:Dataset]]
: : использовать язык dgl и [[mermaid]] встраивать диаграммы алгоритмов в вики страницы см. Graphviz + [[:Категория:Diagrams]] -  
: использовать язык dgl и [[mermaid]] встраивать диаграммы алгоритмов в вики страницы см. Graphviz + [[:Категория:Diagrams]] - [[Taxonomic_sandbox]]
: представлять алгоритмы на страницах вики в виде диаграмм, псевдокода, кода на различных языках программирования
: организовать совместную деятельность на основе студий Scratch и галерей Smap!
: создавать собственные блоки (команды и процедуры с входными параметрами) в среде Snap! (создавать функции с использованием различных типов данных))
: создавать функции с использованием различных типов данных
: оценивать и сравнивать эффективность алгоритмов, вычислительную сложность алгоритмов
: использовать рекурсию при создании собственных функций
: использовать рекурсию в командах и процедурах, использовать рекурсию при создании собственных функций
: сравнивать и оценивать эффективность алгоритмов
: использовать объекты первого класса и лямбда исчисления
 
 
 
Как организовать хранилище алгоритмов
Как использовать лямбда исчисления и объекты первого класса


== Содержание разделов дисциплины: ==
== Содержание разделов дисциплины: ==

Версия от 22:36, 16 декабря 2022

Учебная группа, работающая с курсом Алгоритмы и структуры данных данных в в 2022 году


Цель, результаты освоения дисциплины

В результате изучения данной дисциплины студенты будут иметь представление о современных алгоритмических языках, о способах записи алгоритмов и конструирования программ, основах объектного подхода в программировании

Цель
теоретические знания и практический опыт в области основ алгоритмизации задач, классификации языков программирования, типов данных, структур данных, взаимосвязь алгоритмов и структур данных, особенностей реализации алгоритмов и типов данных в языках блочного программирования Scratch, Snap!, GP
Знать
Основные понятия, связанные с миром алгоритмов и структур данных См. Категория:Понятие
основы алгоритмизации задач, структуры данных;
типы данных, структуры данных;
методы и алгоритмы поиска и сортировки данных;
Уметь
обращаться к внешним и внутренним данным из среды Semantic MediaWiki, уметь использовать различные типы данных внутри Semantic MediaWiki см. Категория:Dataset
обмениваться проектами и блоками программ в Snap!
сравнивать и объединять статьи о языках программирования Taxonomic_sandbox
импортировать и экспортировать данные в среду визуального программирования Snap!
проектировать и программировать линейные и разветвляющиеся структуры алгоритмов;
планировать процесс реализации алгоритма при помощи псевдокода и диаграмм - Категория:Diagrams
: использовать язык dgl и mermaid встраивать диаграммы алгоритмов в вики страницы см. Graphviz + Категория:Diagrams -
представлять алгоритмы на страницах вики в виде диаграмм, псевдокода, кода на различных языках программирования
создавать собственные блоки (команды и процедуры с входными параметрами) в среде Snap! (создавать функции с использованием различных типов данных))
оценивать и сравнивать эффективность алгоритмов, вычислительную сложность алгоритмов
использовать рекурсию в командах и процедурах, использовать рекурсию при создании собственных функций
использовать объекты первого класса и лямбда исчисления

Содержание разделов дисциплины:

Пространство для совместной деятельности

Wiki + SMV

Алгоритмы

Алгоритмы поиска

Алгоритмы сортировки

Описание и редактирование алгоритмов

Диаграммы представления алгоритмов

Сравнение эффективности алгоритмов

Структуры данных

Получение данных Список случайных чисел из %сколько от %min до %max


Рекурсия

Рекурсия

Литература

Основная литература

Дополнительная литература

https://snap.berkeley.edu/snap/help/SnapManual.pdf - Руководство по Snap!

Видеоматериалы

Критерии оценки по дисциплине