Quick actions

cmd+k|ctrl+k

Navigation

Languages

Remove Duplicates using O(n) Time and O(n) space

Snippet info

Language

Cpp

Visibility

public

Author

amangoyal1727

Created

2021-05-29T02:18:02.745913Z

Updated

2021-05-29T02:18:02.745913Z

#include <iostream>
#include <vector>
using namespace std;

int main() {
    
    int arr[] = {1, 1, 1, 4, 4, 5, 5, 5};
    int n = sizeof(arr)/sizeof(arr[0]);
    // vector<int> v;
    // v.push_back(arr[0]);
    // for(int i=1 ; i<n ; i++) {
    //     if(v[v.size()-1]!=arr[i]){
    //         v.push_back(arr[i]);
    //     }
    // }
    
    // for(int i=0 ; i<v.size(); i++){
    //     cout<<v[i]<<" ";
    // }
    
    int nonduplicate = 1;
    for(int i=1 ; i<n; i++){
        if(arr[i] != arr[nonduplicate -1]){
            arr[nonduplicate] = arr[i];
            nonduplicate++;
            i++;
        }
        
    }
    
    for(int i=0; i<nonduplicate; i++){
        cout<<arr[i]<<" ";
    }
    
    
}
INFO