Cody

Problem 1237. It's race time! Write a faster function than the test suite call of unique().

Solution 242348

Submitted on 10 May 2013 by Grzegorz Knor
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
%% x = rand(10000, 1); z = rand(10000, 1); x = vertcat(x, z); tic y_correct = unique(x); t_unique = toc tic y_myunique = my_unique(x); t_myunique = toc assert(isequal(sort(my_unique(x)),y_correct) && t_unique > t_myunique)

t_unique = 0.0306 t_myunique = 0.0040

2   Pass
%% x = rand(50000, 1); z = rand(50000, 1); x = vertcat(x, z); tic y_correct = unique(x); t_unique = toc tic y_my_unique = my_unique(x); t_my_unique = toc assert(isequal(sort(my_unique(x)),y_correct) && t_unique > t_my_unique)

t_unique = 0.0153 t_my_unique = 0.0148

3   Pass
%% x = [1; 2; 3; 4; 2; 3; 4; 5;]; tic y_correct = unique(x); t_unique = toc tic y_my_unique = my_unique(x); t_my_unique = toc assert(isequal(sort(my_unique(x)),y_correct) && t_unique > t_my_unique)

t_unique = 2.4100e-04 t_my_unique = 5.6000e-05