|
Чебышевский сборник, 2015, том 16, выпуск 3, страницы 479–495
(Mi cheb430)
|
|
|
|
Эта публикация цитируется в 1 научной статье (всего в 1 статье)
ИНФОРМАТИКА И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ В МАТЕМАТИКЕ
Гнездовые массивы и рекурсия
А. Р. Есаян, Н. М. Добровольский Тульский государственный педагогический университет им. Л. Н. Толстого
Аннотация:
Решение задач с данными, представленными вложенными или, по-другому, гнездовыми массивами, является непростым делом из-за достаточно непредсказуемой их структуры. И здесь во многих случаях спасительной оказывается рекурсия. Ее использование позволяет линейно по одной и той же схеме осуществлять пробежку по всем элементам каждого уровня любого гнездового массива вне зависимости от его структуры и глубины вложенности. Гнездовой массив можно интерпретировать деревом, корнем которого является сам массив, от него идут дуги к массивам-элементам и т. д. Листьями подобного дерева являются скаляры или строки — конечные элементы, не имеющие ссылок на последующие массивы.
В статье для решения ряда задач общего характера с гнездовыми массивами предлагаются соответствующие рекурсивные программы-функции. Вот примеры таких задач: подсчитать общее количество листьев массива; сформировать массив из транспонированных на всех уровнях вложенности элементов исходного массива; выяснить, является ли данный объект (скаляр, строка, простой массив, гнездовой массив) элементом данного массива на каком-либо уровне вложенности; подсчитать количество вхождений объекта в массив на всех уровнях вложенности; собрать все листья массива в вектор, заместить листья данного массива элементами какого-либо вектора и т. п.
Во всех случаях рекурсивная триада такова: параметр рекурсии — гнездовой массив; декомпозиция — переходы на всех уровнях вложенности от массивов к их элементам и так до листьев; рекурсивная база, то есть тривиальные случаи в рекурсии — листья массивов [1].
Предлагаемые лаконичные рекурсивные программы-функции решения перечисленных и некоторых других задач реализованы на простом и интуитивно понятном языке программирования системы инженерных и научных вычислений PTC Mathcad Prime (версия 3.1) [2,3].
Отметим, что в этой системе гнездовые массивы — это вложенные друг в друга матрицы.
Библиография: 3 названия.
Ключевые слова:
гнездовой массив, матрица, дерево, рекурсия, рекурсивная функция, декомпозиция, PTC Mathcad.
Поступила в редакцию: 26.03.2015
Образец цитирования:
А. Р. Есаян, Н. М. Добровольский, “Гнездовые массивы и рекурсия”, Чебышевский сб., 16:3 (2015), 479–495
Образцы ссылок на эту страницу:
https://www.mathnet.ru/rus/cheb430 https://www.mathnet.ru/rus/cheb/v16/i3/p479
|
Статистика просмотров: |
Страница аннотации: | 361 | PDF полного текста: | 113 | Список литературы: | 67 |
|