Skip to main content

Remove array Dublicate With NoExtraSpace Using Java

 

Find and remove Array Elements Which Appear More Then Once.(Remove Duplicate Elements From Sorted Array).

For Example1,

Input,
[4,4,3,3,1]

Output,
[4,3,1]

For Example2,

Input,
[5,5,4,3,1]

Output,
[5,4,3,1]

Solution

1)Iterate the array elements.
2)Intalize The Index Counter(j).
3)Check If The Current And Next
Element Are Same(i not equals i+1).
4)If Its Not Equal Store arr[i] into
jth index.
5)do Until Itrate Whole Array Elements.

How to find number of Array Elements
Without Dublicate Array Elements.

J+1 Elements Non Dublicate Array 
Elements.

Java

class arrayDublicateWithNoExtraSpace{

public static void main(String[] args){
int[] arr={1,2,2,3,4,5,5,6,6,6,7};
int n=arr.length;

int j=0;

for(int i=0;i<n-1;i++){
if(arr[i]!=arr[i+1]){
arr[j]=arr[i];
j+=1;
}
}

//Buffer Last Element Of Given Array
if(arr[n-1]!=arr[n-2]){
arr[j]=arr[n-1];
}

for(int i=0;i<j+1;i++){
System.out.println(arr[i]);
}
}
}

/*
01-09-2020 4:00pm
------------------------------------------------------------------+ |
Remove Array Dublicates Without Using Extra Spcing. |
Time Complexity o(n) |
Comparision Based |
------------------------------------------------------------------+
*/

Comments

Popular posts from this blog

LPS(Longest Prefix Which Is Also Suffix) Array Generation Using Java

import java.util.* ; //Longest Prefix Which Is Also Suffix Which Is Used To Found a Pattern Through Avoid Repeated Characters in Given String. We Will Discuss KMP ALGORITHM TO Find A Pattern In Given String Latter. class lbs{ public static void main( String [] args){ Scanner in= new Scanner(System.in); //Get Input From User String s=in.nextLine(); //Convert String Into Char Array char [] ch=s.toCharArray(); int n=s.length(); int [] lbsArr= new int [n]; int j= 0 ,i= 1 ; lbsArr[ 0 ]= 0 ; //LPS ARRAY ALGORITHM /* i=1; j=0; string s="aaab" while i<n if s[i]==s[j]: lpsArr[i]=j; j=j+1 i=i+1 else: if j==0: lbsArr[j]=0 i=i+1 else: ...

Stack is Linear Data Structure- Basic DSA In Java Programming

  /* Stack Is a Linear Data Structure.FIFO(First In First Out) or LIFO(Last In First Out). [ Elements ] [ Elements ] [ Elements ] [ Elements ] */ import java.util.*; class stack{ public static void main( String [] args){ Stack < Integer > s= new Stack < Integer >(); //Push Element To Stack s.push( 10 ); s.push( 5 ); s.push( 2 ); s.push( 1 ); System.out.println(s); /* After Push The Stack Like [ 1 ] <---Push And Pop In Top Of The Statck [ 2 ] [ 5 ] [ 10] */ //Pop Element From Statck s.pop(); System.out.println(s); /* After Pop From Stack [ 1 ]--> Pop From Top Of The Stack [ 5 ] [ 10] */ System.out.println(s.peek()); /* s.peek(); Shows Top Of The Stack */ /* s.empty() returns boolean V...

Linked List - Data Structure Basic With Example Java

//linked list /*     Linked List is a Linear Data Structure.      Drawback of Array Is continues Block Of Memory. Linked Is Used To Allocate the Different Memory Location. Each node Contains Data And Pointer. Header Is Used To Denote The First Node Of Linked List. Tail Is Used To Denote the Last Node of The Linked List. 1.Singly Linked List Each Node as Data And pointer To The Next Node. [ data(header) | pointer of next]->[ data | pointer of next]->[ data | pointer of next]->[ data | null]; 2.doubly Linked List Each Node as Data And pointer To The Next Node and prev Node. [ data(header) | pointer of next]<->[pointer to prev|data | pointer of next]<->[pointer to prev|data | pointer of next]<->[pointer to prev|data | null]; 3.Circle Linked List [ data(header) | pointer of next]->[ data | pointer of next]->[ data | pointer of next]->[ data | null]-->header */ class...