Skip to main content

Solution to find the largest unique string in given string

There is a problem like we need to find the largest distinct string in a given string.

For example, there is a string - ababa
and the largest distinct string in it such that no two adjacent characters are same is "ababa"

Second example - we are given string - aaaaac
so largest distinct string is - "ca"

How to find the solution for this

Solution :

We need to create a vertical array for this - character by character

Like a string is given - "abccdderteerveedsseqwsaxztybb"

So we will create a vertical array as below -

a
b
cc
 d
  d
  e
  r
  t
  ee
   r
   v
   ee
    d
    ss
     e
     q
     w
     s
     a
     x
     z
     t
     y
     bb


Whenever there is a repeated word we need to put that in same line else to next line.
So we found that there 6 vertical lines created and count in 4 vertical lines are -

1st line - 3
2nd line - 2
3rd line - 5
4th line - 3
5th line - 10
6th line - 1


So you can see that in 5th line there are maximum characters, hence the longest string with no two adjacent characters are same is in 5th line i.e. seqwsaxztyb



a
b
cc
 d
  d
  e
  r
  t
  ee
   r
   v
   ee
    d
    ss
     e
     q
     w
     s
     a
     x
     z
     t
     y
     bb

and in the complete string - abccdderteerveedsseqwsaxztybb

So there is the solution for this famous problem.

Comments