Ответ в комментариях правильный - возможно, он выполняет функцию внутри программы, однако вне контекста код кажется довольно бессмысленным.
Это, по сути, то, что происходит. Предположим, у вас есть матрица A
A = [3 4;
5 6]
Тогда B будет выглядеть следующим образом:
B = [3 4 5 6]
C затем создается путем сравнения kkth-элемента A с kkth-элементом B Если они равны, то kkth элемент C будет kk. Таким образом, в приведенном выше примере C будет выглядеть следующим образом:
C = [1 2;
3 4]
Если, как вы выяснили, в вашей исходной матрице A есть несколько записей одного и того же числа, то итоговая матрица C будет иметь индекс только последнего уникального вхождения этого числа. Итак, если
A = [3 3;
5 6]
B = [3 3 5 6]
C = [2 2;
3 4]
Причина, по которой ваш первый C
имеет 7 три раза, в том, что последняя позиция 12 находится в позиции 7. Причина, по которой ваш второй C
отличается от вашего первого C
потому что A
, из которого он сделан, совершенно уникален.