Effacer les filtres
Effacer les filtres

if i have random matrices how to find a specific matrix?

2 vues (au cours des 30 derniers jours)
Firas Al-Kharabsheh
Firas Al-Kharabsheh le 17 Avr 2016
Commenté : Walter Roberson le 19 Avr 2016
if i have a random 20 binary matrix and matrix A ;
A = [ 1 0 1 1
0 1 0 0
1 1 0 1
1 1 0 1 ]
s =[ 1 0 1 0
1 1 0 0
0 1 1 0
0 0 1 0 ]
s = [ 1 1 0 1
0 1 0 0
1 1 0 1
0 1 0 1 ]
.
.
.
.
s = [ 1 0 1 0
0 0 0 1
1 1 1 0
1 0 1 1 ]
and after apply some operation i want to find the minimum value and then return the matrix that have the minimum value
this is my code
for k=1:20
s = randi ([0 1 ] ,4,4);
S(k)=(sum (sum(A ~= s)));
end
s7=min(S)
how can return the tow matrix have the min value??
  1 commentaire
John D'Errico
John D'Errico le 17 Avr 2016
You seem to be asking pretty basic questions in programming (over and over again) in a very confused way. That suggests the best solution is for you to spend some time learning programming. Pick up a basic text on MATLAB, and start reading. Do the examples. Try the problems suggested.

Connectez-vous pour commenter.

Réponses (2)

John D'Errico
John D'Errico le 17 Avr 2016
Why not just save the current matrix, IF your computation is better than the previous best solution? This requires only an if statement inside the loop, and that you store the current best objective function at any point in time.

Azzi Abdelmalek
Azzi Abdelmalek le 17 Avr 2016
A = [ 1 0 1 1
0 1 0 0
1 1 0 1
1 1 0 1 ]
for k=1:20
s = randi ([0 1 ] ,4,4);
M{k}=s;
S(k)=(sum (sum(A ~= s)));
end
[s7,idx]=min(S)
out=M{idx}
  6 commentaires
Firas Al-Kharabsheh
Firas Al-Kharabsheh le 19 Avr 2016
when i copy the code this statement appear
(Insufficient number of outputs from right hand side of equal sign to satisfy assignment.)
[s7,idx]=min(S);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by