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

Run Settings
LanguageC++
Language Version
Run Command
#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]<<" "; } }
Editor Settings
Theme
Key bindings
Full width
Lines