Unique numbers in array

1 view (last 30 days)
I was charged to try and write my own unique function , I was thinking of first sorting the array, and then writing a loop that went through each number from min(min) to max(max) but cant figure out once a repeated number is identified to skip it. Any thoughts?

Accepted Answer

Image Analyst
Image Analyst on 24 Apr 2014
That could work, but why use a for loop when there are so much more "MATLAB-ish" ways of doing it, like:
m = randi(4, 1, 11)
sortedm = sort(m)
diffs = [1, diff(sortedm)]
uniqueNumbers = sortedm(find(diffs))

More Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 23 Apr 2014
Edited: Azzi Abdelmalek on 23 Apr 2014
out= unique(A)
Or
out=unique(A,'rows')

Community Treasure Hunt

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

Start Hunting!