helscandeintrlv

Восстановите упорядоченное расположение символов в спиральном шаблоне

Синтаксис

deintrlvd = helscandeintrlv(data,Nrows,Ncols,hstep)

Описание

deintrlvd = helscandeintrlv(data,Nrows,Ncols,hstep) перестраивает элементы в data путем заполнения временной матрицы элементами спиральным способом и затем отправки матричного содержимого в выходную строку строкой. Nrows и Ncols размерности временной матрицы. hstep наклон диагонали, то есть, суммы, которой увеличивается индекс строки, как индекс столбца увеличивается одним. hstep должно быть неотрицательное целое число меньше, чем Nrows.

Спиральный вид означает, что функция помещает входные элементы по диагоналям временной матрицы. Числом элементов в каждой диагонали является точно Ncols, после того, как функция переносится мимо ребер матрицы при необходимости. Функция пересекает диагонали так, чтобы индекс строки и индекс столбца оба увеличения. Каждая диагональ после первой начинает одну строку ниже первого элемента предыдущей диагонали.

Если data вектор, он должен иметь Nrows*Ncols элементы. Если data матрица с несколькими строками и столбцами, data должен иметь Nrows*Ncols строки и функциональные процессы столбцы независимо.

Использовать эту функцию в качестве инверсии helscanintrlv функция, используйте тот же Nrows, Ncols, и hstep входные параметры в обеих функциях. В этом случае две функции являются инверсиями в том смысле, что применение helscanintrlv сопровождаемый helscandeintrlv оставляет данные без изменений.

Примеры

Команда ниже перестраивает вектор с помощью временной матрицы 3 на 4 и диагоналей наклона 1.

d = helscandeintrlv(1:12,3,4,1)
d =

  Columns 1 through 10 

     1    10     7     4     5     2    11     8     9     6

  Columns 11 through 12 

     3    12

Внутренне, функция создает временную матрицу 3 на 4

[1 10  7  4;
 5  2 11  8;
 9  6  3 12]

использование длины четыре диагонали. Функция затем отправляет элементы, строку строкой, к выходу d.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

Представлено до R2006a