File tree Expand file tree Collapse file tree
Sprint-1/JavaScript/removeDuplicates Expand file tree Collapse file tree Original file line number Diff line number Diff line change 99 * @returns {Array } New sequence with duplicates removed
1010 */
1111export function removeDuplicates ( inputSequence ) {
12- const uniqueItems = [ ] ;
13-
14- for (
15- let currentIndex = 0 ;
16- currentIndex < inputSequence . length ;
17- currentIndex ++
18- ) {
19- let isDuplicate = false ;
20- for (
21- let compareIndex = 0 ;
22- compareIndex < uniqueItems . length ;
23- compareIndex ++
24- ) {
25- if ( inputSequence [ currentIndex ] === uniqueItems [ compareIndex ] ) {
26- isDuplicate = true ;
27- break ;
28- }
29- }
30- if ( ! isDuplicate ) {
31- uniqueItems . push ( inputSequence [ currentIndex ] ) ;
32- }
33- }
34-
35- return uniqueItems ;
12+ return [ ...new Set ( inputSequence ) ] ;
3613}
14+
15+ // The previous code had a time complexity of O(n2) because it had 2 loops to check for duplicates.
16+ // Set has time complexity of O(n) as it just deletes duplicates when needed and the time complexity depends on the input size.
You can’t perform that action at this time.
0 commit comments