Программирование

Задачи для начинающих по программированию. Цикл, условие, присвоение, рекурсия.

Поиск кратчайшего пути в лабиринте

Лабиринт с изображенным кратчайшим путём

Задача: создать программу, которая находит путь в лабиринте из начальной точки в конечную, посещающий все особые точки лабиринта
Использованный API: GTK/GDK;
Среда разработки: Dev-C++

Ключевые слова: 
поиск пути, теория графов

Игра Пятнашки

Состояние: Готово

Задача: создать игру Пятнашки;
Использованный API: GTK/GDK;
Среда разработки: Visual Studio 2008;

Ключевые слова: 
Игра, пятнашки

Нахождение второго минимального расстояния между двумя вершинами.

пример графа

Задано N городов c номерами от 1 до N и сеть из M дорог с односторонним движением между ними. Каждая дорога задается тройкой (i, j, k), где i - номер города, в котором дорога начинается, j -номер города, в котором дорога заканчивается, а k - ее длина (число k - натуральное). Дороги друг с другом могут пересекаться только в концевых городах.
Все пути между двумя указанными городами A и B можно упорядочить в список по неубыванию их длин (если есть несколько путей одинаковой длины, то выбираем один из них). Необходимо найти один из путей, который может быть вторым в списке. Задание 23 (см. "Сборник задач по графам")..

Подсчет количества одинаковых соседей

Пусть L обозначает кольцевой двунаправленный список с заглавным звеном. Описать функцию или процедуру, которая подсчитывает количество элементов списка L, у которых равные соседи. Задача №13 (Двунаправленные списки). (см. "Сборник задач для начинающего программиста")

Ключевые слова: 
список, двунаправленный список, соседние элементы в списке

Сжатие простого списка

Построить список натуральных чисел длиной N. Сжать полученный список, убрав все четные числа. Задача №2 из раздела "Простые списки". (см. "Сборник задач для начинающего программиста")

Ключевые слова: 
список, определение четности, удаление элемента из списка

Алгоритм для нахождения самой дешевой системы дорог

Имеется N городов. Для каждой пары городов (I,J) можно построить дорогу, соединяющую эти два города и не заходящие в другие города. Стоимость такой дороги A(I,J). Вне городов дороги не пересекаются.
Написать алгоритм для нахождения самой дешевой системы дорог, позволяющей попасть из любого города в любой другой. Результаты задавать таблицей B[1:N,1:N], где B[I,J]=1 тогда и только тогда, когда дорогу, соединяющую города I и J, следует строить. Задача #17 (Графы).

Ключевые слова: 
алгоритм Дейкстры граф кратчайший путь

Добавление в список после максимального элемента минимальный.

Дан список из последовательности натуральных чисел. Добавить в список после максимального элемента минимальный.
Задача № 8 (Простые списки).(см. "Сборник задач для начинающего программиста")

Ключевые слова: 
список, сортировка списка, поиск максимального и минимального элемента
Синдикация материалов