Given a binary string, the task is to find minimum number of characters to be removed from it so that it becomes alternate. A binary string is alternate if there are no two consecutive 0s or 1s.
Input : s = "000111" Output : 4 We need to delete two 0s and two 1s to make string alternate. Input : s = "0000" Output : 3 We need to delete three characters to make it alternate. Input : s = "11111" Output : 4 Input : s = "01010101" Output : 0 Input : s = "101010" Output : 0
This problem has below simple solution.
We traverse string from left to right and compare current character with next character.
- If current and next are different then no need to perform deletion.
- If current and next are same, we need to perform one delete operation to make them alternate.
Below is the implementation of above algorithm.
4 4 0
Time Complexity : O(n) where n is number of characters in input string.
This article is contributed by Ravi Maurya(Trojan). If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Minimum characters required to be removed to sort binary string in ascending order
- Minimum size substring to be removed to make a given string palindromic
- Minimum number of palindromic subsequences to be removed to empty a binary string
- Number of flips to make binary string alternate | Set 1
- Minimum letters to be removed to make all occurrences of a given letter continuous
- Minimum digits to be removed to make either all digits or alternating digits same
- Sum of indices of Characters removed to obtain an Empty String based on given conditions
- Minimum characters to be replaced to make frequency of all characters same
- Min flips of continuous characters to make all characters same in a string
- Replace minimal number of characters to make all characters pair wise distinct
- Reverse alternate k characters in a string
- Minimum number of elements to be removed so that pairwise consecutive elements are same
- Minimum cost to remove the spaces between characters of a String by rearranging the characters
- Minimum characters to be added at front to make string palindrome
- Minimum replacements to make adjacent characters unequal in a ternary string
- Minimum replacements to make adjacent characters unequal in a ternary string | Set-2
- Minimum replacements in a string to make adjacent characters unequal
- Minimum number of replacements to make the binary string alternating | Set 2
- Minimum number of swaps to make two binary string equal
- Minimum number of flips with rotation to make binary string alternating