How do you detect duplicate values within a random array?
100 views (last 30 days)
Show older comments
Write a program to find if a vector of random generated integers contains any duplicate element. Return true if any value appears at least twice in the said vector and return false if every element is distinct.
I simply have no idea how to implement this. I believe this problem requires a for loop and a series of if statements.
0 Comments
Accepted Answer
KSSV
on 31 Mar 2020
If you want to use inbuilt functions......you can use unique. Read about it. Let A be your array.
B = unique(A) ;
if length(A)==length(B)
fprintf('No elements repeated')
else
fprintf('Elements repeated')
end
5 Comments
Image Analyst
on 31 Mar 2020
Aaron, not true. The lengths are different if there are repeats because unique() throws out the repeats and sorts the values. Just look
A = [1, 2, 3, 4]
B = unique(A)
fprintf('length(A) = %d. length(B) = %d.\n', length(A), length(B));
A = [1, 2, 2, 2, 9, 5]
B = unique(A)
fprintf('length(A) = %d. length(B) = %d.\n', length(A), length(B));
A =
1 2 3 4
B =
1 2 3 4
length(A) = 4. length(B) = 4.
A =
1 2 2 2 9 5
B =
1 2 5 9
length(A) = 6. length(B) = 4.
More Answers (0)
See Also
Categories
Find more on Creating and Concatenating 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!