2014-09-22 3 views
0

У меня есть матрица 5x5, и мне нужно вертикально выровнять некоторые элементы в соответствии с некоторыми правилами. Например: матрица (1,1) = 2 и матрица (5,3) = 5. Числа 2 и 5 должны быть выровнены в одном столбце, поэтому возможным решением может быть перемещение числа 2 в матрицу (1,3) , или переместите число 5 в матрицу (5,1).Как узнать, выравниваются ли два или более элемента внутри матрицы?

Я знаю, как менять элементы внутри матрицы, но как лучше всего сравнивать, если два элемента находятся в одном столбце?

ответ

1

Вы можете получить столбец, где 2 присутствует таким образом:

[~,J2] = find(matrix==2) 

То же самое для matrix==5. Затем сделайте свопы, которые вам нужны.

Смежные вопросы