Dada una string s de tamaño N . La tarea es encontrar la substring más grande que consta de los mismos caracteres
. Ejemplos:
Entrada: s = “abcdddddeff”
Salida: 5 La
substring es “ddddd”
Entrada: s = aabceebeee
Salida: 3
Aproximación:
atravesar la cuerda de izquierda a derecha. Tome dos variables ans y temp . Si el elemento actual es el mismo que el elemento anterior, incremente la temperatura . Si el elemento actual no es igual al elemento anterior, haga temp como 1 y actualice ans .
A continuación se muestra la implementación del enfoque anterior:
C++
// CPP program to find largest sub // string with same characters #include <bits/stdc++.h> using namespace std; // Function to find largest sub // string with same characters int Substring(string s) { int ans = 1, temp = 1; // Traverse the string for (int i = 1; i < s.size(); i++) { // If character is same as // previous increment temp value if (s[i] == s[i - 1]) { ++temp; } else { ans = max(ans, temp); temp = 1; } } ans = max(ans, temp); // Return the required answer return ans; } // Driver code int main() { string s = "abcdddddeff"; // Function call cout << Substring(s); return 0; }
Java
// Java program to find largest sub // string with same characters import java.util.*; class GFG { // Function to find largest sub // string with same characters static int Substring(String s) { int ans = 1, temp = 1; // Traverse the string for (int i = 1; i < s.length(); i++) { // If character is same as // previous increment temp value if (s.charAt(i) == s.charAt(i - 1)) { ++temp; } else { ans = Math.max(ans, temp); temp = 1; } } ans = Math.max(ans, temp); // Return the required answer return ans; } // Driver code public static void main(String[] args) { String s = "abcdddddeff"; // Function call System.out.println(Substring(s)); } } // This code is contributed by 29AjayKumar
Python3
# Python3 program to find largest sub # with same characters # Function to find largest sub # with same characters def Substring(s): ans, temp = 1, 1 # Traverse the string for i in range(1, len(s)): # If character is same as # previous increment temp value if (s[i] == s[i - 1]): temp += 1 else: ans = max(ans, temp) temp = 1 ans = max(ans, temp) # Return the required answer return ans # Driver code s = "abcdddddeff" # Function call print(Substring(s)) # This code is contributed by Mohit Kumar
C#
// C# program to find largest sub // string with same characters using System; class GFG { // Function to find largest sub // string with same characters static int Substring(String s) { int ans = 1, temp = 1; // Traverse the string for (int i = 1; i < s.Length; i++) { // If character is same as // previous increment temp value if (s[i] == s[i - 1]) { ++temp; } else { ans = Math.Max(ans, temp); temp = 1; } } ans = Math.Max(ans, temp); // Return the required answer return ans; } // Driver code public static void Main(String[] args) { String s = "abcdddddeff"; // Function call Console.WriteLine(Substring(s)); } } // This code is contributed by Rajput-Ji
PHP
<?php // PHP program to find largest sub // string with same characters // Function to find largest sub // string with same characters function Substring($s) { $ans = 1; $temp = 1; // Traverse the string for ($i = 1; $i < strlen($s); $i++) { // If character is same as // previous increment temp value if ($s[$i] == $s[$i - 1]) { ++$temp; } else { $ans = max($ans, $temp); $temp = 1; } } $ans = max($ans, $temp); // Return the required answer return $ans; } // Driver code $s = "abcdddddeff"; // Function call echo Substring($s); // This code is contributed by Naman_Garg ?>
Javascript
<script> // Javascript program to find largest sub // string with same characters // Function to find largest sub // string with same characters function Substring(s) { var ans = 1, temp = 1; // Traverse the string for (var i = 1; i < s.length; i++) { // If character is same as // previous increment temp value if (s[i] == s[i - 1]) { ++temp; } else { ans = Math.max(ans, temp); temp = 1; } } ans = Math.max(ans, temp); // Return the required answer return ans; } // Driver code var s = "abcdddddeff"; // Function call document.write( Substring(s)); </script>
Producción:
5
Complejidad de tiempo : O(N)
Espacio Auxiliar : O(1)
Publicación traducida automáticamente
Artículo escrito por ShivamKumarsingh1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA