could anyone help me to solve the issue
1 view (last 30 days)
Show older comments
I am having a matrix size(4,8) which is having a combination of zero and non zero values.
could any one help me how to display the matrix in such a way that it should atleast contain one nonzero value with respect to its every row and every column
7 Comments
Matt J
on 5 Jun 2019
I need to modify the above matrix in such a way that every row and column should contain atleast one non zero value.
The original matrix you showed already did satisfy this requirement.
Accepted Answer
Rik
on 5 Jun 2019
This removes elements until your matrix is no longer valid according to your rule. It is very slow for bigger matrices, but it is guaranteed to work. Look up "bubble sort" if you want to understand how it works.
A=rand(4,8);
isValidMatrix=@(x) all(any(x,1)) && all(any(x,2));
B=A;
%use a structure similar to the 'bubble sort' algorithm
for idx1=1:numel(B)
for idx2=idx1:numel(B)
if B(idx2)==0,continue,end
B_temp=B;
B_temp(idx2)=0;
if isValidMatrix(B_temp)
B=B_temp;
end
end
end
disp(B)
0 Comments
More Answers (0)
See Also
Categories
Find more on Shifting and Sorting Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!