How i can generate 2D matrix with unique values using 2D or 1D logistic map ?

조회 수: 4 (최근 30일)
Radhwan Jawad
Radhwan Jawad 2023년 3월 14일
답변: Kush 2023년 6월 7일
Hello Matlab community
I want to generate (n*n) matrix with unique values for each row and each column and the range of values in each cell must be between 0 and n-1 using 2D or 1D logistic map.
for example, if the size of matrix is 4*4 the output must be as below:
0 3 2 1
1 2 0 3
3 0 1 2
2 1 3 0
and i want this output is fixed for each run.

답변 (1개)

Kush
Kush 2023년 6월 7일
A simple solution to this could be creating an array of size n with values ranging from 0 to n-1, followed by appending this array after circular shifting into a matrix, this allows each element to be unique in its row as well as its column.
n = 4;
arr = 0:n-1;
matrix = zeros(n,n);
for i = 1:n
matrix(i,:) = circshift(arr,i);
end
matrix
matrix = 4×4
3 0 1 2 2 3 0 1 1 2 3 0 0 1 2 3
please find the documentation for circshift here:

카테고리

Help CenterFile Exchange에서 NaNs에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by