How to convert row-major linear indices to column-major indices?
조회 수: 17 (최근 30일)
이전 댓글 표시
I have a row-major linear indices [1,8, 14, 9, 4, 11, 18] from a matrix 3 x 6 (row x column). How to convert this to column-major linear indices [1, 5, 6, 8, 10, 14, 18] without for-loops? I want to generalize for any rectangular or square matrices.
댓글 수: 0
채택된 답변
Stephen23
2022년 3월 23일
편집: Stephen23
2022년 3월 23일
S = [3,6]; % matrix size
X = [1,8,14,9,4,11,18]; % row-major linear indices
[Y,Z] = ind2sub(flip(S),X);
V = sub2ind(S,Z,Y) % column-major linear indices
댓글 수: 4
Stephen23
2022년 3월 24일
S = [3,6]; % matrix size
X = [1,5,6,8,10,14,18]; % column-major linear indices
[Y,Z] = ind2sub(S,X);
V = sub2ind(flip(S),Z,Y) % row-major linear indices
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!