Problem 951. Unique: Faster for options 'rows' and 'stable' for large array of uint8

Solution 1822992

Submitted on 22 May 2019 by James
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

2   Pass
% Warm-Up Calls c=randi(4,1000,16,'uint8')-1; out = unique_rows_stable_fast(c); out = unique_rows_stable_fast(c); out = unique_rows_stable_fast(c);

3   Pass
c=randi(4,6000000,16,'uint8')-1; ta=clock; out = unique_rows_stable_fast(c); t1=etime(clock,ta)*1000; fprintf('Elapsed time = %.0f msec\n',t1) assert(isequal(unique(c,'rows','stable'),out)) t2=min(20000,t1); % unique scores 20000 msec feval(@assignin,'caller','score',floor(t2));

Elapsed time = 6722 msec

Suggested Problems

More from this Author246

Community Treasure Hunt

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

Start Hunting!