MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today**New to MATLAB?**

Asked by felix
on 18 Nov 2012

how can i make a function that accepts as input a vector of integers, which will return the largest and the second largest component of the vector for the first i think that is max1=max(max(C)) any idea for max2?

*No products are associated with this question.*

Answer by Jan Simon
on 18 Nov 2012

Edited by Jan Simon
on 19 Nov 2012

Accepted answer

Do you mean the maximum over a matrix (see tags and example `max(max(C))`) or over vector (body of the question)?

- Find maximum value with the corresponding index
- Set value of this index to NaN
- Find maximum again.

Alternative, which is slower due to the expensive sorting for large inputs:

- SORT helps.

Which values should be replied, if the highest maximum is not unique?

[EDITED: Sorry, I've overseen that this is a homework!]

felix
on 18 Nov 2012

over vector. i have a vector with random number and i have to find the max and the second max number of the vector without using unique or short...

## 0 Comments