Лекция: Исключение элементов массивов

← 28.10. Возведение квадратной матрицы в целую… 28.12. Расчет определителя квадратной матрицы →

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

Сначала рассмотрим простой алгоритм исключения из одномерного массива X, содержащего n элементов, элемента с номером r. При таком исключении место элемента Xr должен занять элемент Xr+1, а его место – элемент Xr+2 и т.д. Общее число элементов в массиве уменьшится на единицу. Этот алгоритм представлен на рис. 28.21 а.

На рис. 28.21 б представлен алгоритм исключения из двумерного массива – матрицы строки ir и столбца jr. Принципиально он не отличается от предыдущего, только на одну позицию сдвигаются не отдельные элементы, а строки и столбцы.

Более сложным является исключение элементов по какому либо признаку, например, отрицательных. Таких элементов может быть несколько и они могут расположены в массиве любым образом, в т.ч. и несколько подряд. Наиболее просто исключение можно выполнить с использованием вспомогательного массива. В него переписываются элементы, которые необходимо оставить в исходном. После завершения цикла переписывания все элементы вспомогательного массива возвращаются в исходный массив. Блок схема алгоритма представлена на рис. 28.22.

Более рациональным, но и более сложным является алгоритм без использования вспомогательного массива, над которым предлагается подумать самостоятельно.

← 28.10. Возведение квадратной матрицы в целую… 28.12. Расчет определителя квадратной матрицы
еще рефераты
Еще работы по информатике