{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2026-06-05T00:10:21.000Z","description":"Problems submitted by members of the MATLAB Central community.","is_default":true,"created_by":161519,"badge_id":null,"featured":false,"trending":false,"solution_count_in_trending_period":0,"trending_last_calculated":"2026-06-05T00:00:00.000Z","image_id":null,"published":true,"community_created":false,"status_id":2,"is_default_group_for_player":false,"deleted_by":null,"deleted_at":null,"restored_by":null,"restored_at":null,"description_opc":null,"description_html":null,"published_at":null},"problems":[{"id":1237,"title":"It's race time! Write a faster function than the test suite call of unique().","description":"Write a function to get unique elements of a vector faster than unique()! Input will be a vector (of integers or floating point numbers) of any size. The order of the returned vector is unimportant. \r\n\r\nExample:\r\nInput: x = [1 1 2 2 3 3];\r\nOutput: [1 2 3];\r\n\r\nInput: x = [0.1 3.1 2.1 2.0 3.1];\r\nOutput: [0.1 3.1 2.1 2.0]; % or any order","description_html":"\u003cp\u003eWrite a function to get unique elements of a vector faster than unique()! Input will be a vector (of integers or floating point numbers) of any size. The order of the returned vector is unimportant.\u003c/p\u003e\u003cp\u003eExample:\r\nInput: x = [1 1 2 2 3 3];\r\nOutput: [1 2 3];\u003c/p\u003e\u003cp\u003eInput: x = [0.1 3.1 2.1 2.0 3.1];\r\nOutput: [0.1 3.1 2.1 2.0]; % or any order\u003c/p\u003e","function_template":"function y = my_unique(x)\r\n   y = x;\r\nend","test_suite":"%%\r\nx = rand(10000, 1);\r\nz = rand(10000, 1);\r\nx = vertcat(x, z);\r\ntic\r\ny_correct = unique(x);\r\nt_unique = toc\r\n\r\ntic\r\ny_myunique = my_unique(x);\r\nt_myunique = toc\r\n\r\nassert(isequal(sort(my_unique(x)),y_correct) \u0026\u0026 t_unique \u003e t_myunique)\r\n\r\n%%\r\nx = rand(50000, 1);\r\nz = rand(50000, 1);\r\nx = vertcat(x, z);\r\n\r\ntic\r\ny_correct = unique(x);\r\nt_unique = toc\r\n\r\ntic\r\ny_my_unique = my_unique(x);\r\nt_my_unique = toc\r\n\r\nassert(isequal(sort(my_unique(x)),y_correct) \u0026\u0026 t_unique \u003e t_my_unique)\r\n\r\n%%\r\nx = [1; 2; 3; 4; 2; 3; 4; 5;];\r\n\r\ntic\r\ny_correct = unique(x);\r\nt_unique = toc\r\n\r\ntic\r\ny_my_unique = my_unique(x);\r\nt_my_unique = toc\r\n\r\nassert(isequal(sort(my_unique(x)),y_correct) \u0026\u0026 t_unique \u003e t_my_unique)\r\n\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":9,"created_by":10338,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":32,"test_suite_updated_at":"2013-02-03T20:33:40.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2013-02-01T03:36:13.000Z","updated_at":"2026-05-25T22:59:10.000Z","published_at":"2013-02-01T03:36:13.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eWrite a function to get unique elements of a vector faster than unique()! Input will be a vector (of integers or floating point numbers) of any size. The order of the returned vector is unimportant.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eExample: Input: x = [1 1 2 2 3 3]; Output: [1 2 3];\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInput: x = [0.1 3.1 2.1 2.0 3.1]; Output: [0.1 3.1 2.1 2.0]; % or any order\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"}],"problem_search":{"problems":[{"id":1237,"title":"It's race time! Write a faster function than the test suite call of unique().","description":"Write a function to get unique elements of a vector faster than unique()! Input will be a vector (of integers or floating point numbers) of any size. The order of the returned vector is unimportant. \r\n\r\nExample:\r\nInput: x = [1 1 2 2 3 3];\r\nOutput: [1 2 3];\r\n\r\nInput: x = [0.1 3.1 2.1 2.0 3.1];\r\nOutput: [0.1 3.1 2.1 2.0]; % or any order","description_html":"\u003cp\u003eWrite a function to get unique elements of a vector faster than unique()! Input will be a vector (of integers or floating point numbers) of any size. The order of the returned vector is unimportant.\u003c/p\u003e\u003cp\u003eExample:\r\nInput: x = [1 1 2 2 3 3];\r\nOutput: [1 2 3];\u003c/p\u003e\u003cp\u003eInput: x = [0.1 3.1 2.1 2.0 3.1];\r\nOutput: [0.1 3.1 2.1 2.0]; % or any order\u003c/p\u003e","function_template":"function y = my_unique(x)\r\n   y = x;\r\nend","test_suite":"%%\r\nx = rand(10000, 1);\r\nz = rand(10000, 1);\r\nx = vertcat(x, z);\r\ntic\r\ny_correct = unique(x);\r\nt_unique = toc\r\n\r\ntic\r\ny_myunique = my_unique(x);\r\nt_myunique = toc\r\n\r\nassert(isequal(sort(my_unique(x)),y_correct) \u0026\u0026 t_unique \u003e t_myunique)\r\n\r\n%%\r\nx = rand(50000, 1);\r\nz = rand(50000, 1);\r\nx = vertcat(x, z);\r\n\r\ntic\r\ny_correct = unique(x);\r\nt_unique = toc\r\n\r\ntic\r\ny_my_unique = my_unique(x);\r\nt_my_unique = toc\r\n\r\nassert(isequal(sort(my_unique(x)),y_correct) \u0026\u0026 t_unique \u003e t_my_unique)\r\n\r\n%%\r\nx = [1; 2; 3; 4; 2; 3; 4; 5;];\r\n\r\ntic\r\ny_correct = unique(x);\r\nt_unique = toc\r\n\r\ntic\r\ny_my_unique = my_unique(x);\r\nt_my_unique = toc\r\n\r\nassert(isequal(sort(my_unique(x)),y_correct) \u0026\u0026 t_unique \u003e t_my_unique)\r\n\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":9,"created_by":10338,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":32,"test_suite_updated_at":"2013-02-03T20:33:40.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2013-02-01T03:36:13.000Z","updated_at":"2026-05-25T22:59:10.000Z","published_at":"2013-02-01T03:36:13.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eWrite a function to get unique elements of a vector faster than unique()! Input will be a vector (of integers or floating point numbers) of any size. The order of the returned vector is unimportant.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eExample: Input: x = [1 1 2 2 3 3]; Output: [1 2 3];\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInput: x = [0.1 3.1 2.1 2.0 3.1]; Output: [0.1 3.1 2.1 2.0]; % or any order\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"}],"errors":[],"facets":[[],[{"value":"hard","count":1,"selected":false}]],"term":"tag:\"tic\"","page":1,"per_page":50,"sort":"map(difficulty_value,0,0,999) asc"}}