Dada una oración str . El problema es eliminar todas las palabras palindrómicas de la oración dada.
Ejemplos:
Input : str = "Text contains malayalam and level words" Output : Text contains and words Input : str = "abc bcd" Output : abc bcd
Planteamiento: Una a una extrae todas las palabras. Compruebe si la palabra actual no es un palíndromo y luego agréguela a la string final.
Algoritmo:
C++
// C++ implementation to remove all the // palindromic words from the given sentence #include <bits/stdc++.h> using namespace std; // function to check if 'str' is palindrome bool isPalindrome(string str) { int i = 0, j = str.size() - 1; // traversing from both the ends while (i < j) // not palindrome if (str[i++] != str[j--]) return false; // palindrome return true; } // function to remove all the palindromic words // from the given sentence string removePalinWords(string str) { // 'final_str' to store the final string and // 'word' to one by one store each word of 'str' string final_str = "", word = ""; // add space at the end of 'str' str = str + " "; int n = str.size(); // traversing 'str' for (int i = 0; i < n; i++) { // accumulating characters of the current word if (str[i] != ' ') word = word + str[i]; else { // if 'word' is not palindrome then a // add it to 'final_str' if (!(isPalindrome(word))) final_str += word + " "; // reset word = ""; } } // required final string return final_str; } // Driver program to test above int main() { string str = "Text contains malayalam and level words"; cout << removePalinWords(str); return 0; }
Java
// Java implementation to remove all the // palindromic words from the given sentence class GFG { // function to check if 'str' is palindrome static boolean isPalindrome(String str) { int i = 0, j = str.length() - 1; // traversing from both the ends while (i < j) { // not palindrome if (str.charAt(i++) != str.charAt(j--)) return false; } // palindrome return true; } // function to remove all the palindromic words // from the given sentence static String removePalinWords(String str) { // 'final_str' to store the final string and // 'word' to one by one store each word of 'str' String final_str = "", word = ""; // add space at the end of 'str' str = str + " "; int n = str.length(); // traversing 'str' for (int i = 0; i < n; i++) { // accumulating characters of the current word if (str.charAt(i) != ' ') word = word + str.charAt(i); else { // if 'word' is not palindrome then a // add it to 'final_str' if (!(isPalindrome(word))) final_str += word + " "; // reset word = ""; } } // required final string return final_str; } // Driver code public static void main (String[] args) { String str = "Text contains malayalam and level words"; System.out.print(removePalinWords(str)); } } // This code is contributed by Anant Agarwal.
Python3
# Python3 implementation to remove all the # palindromic words from the given sentence # function to check if 'str' is palindrome def isPalindrome(string) : i = 0; j = len(string) - 1; # traversing from both the ends while (i < j) : # not palindrome if (string[i] != string[j]) : return False; i += 1; j -= 1; # palindrome return True; # function to remove all the palindromic words # from the given sentence def removePalinWords(string) : # 'final_str' to store the final string and # 'word' to one by one store each word of 'str' final_str = ""; word = ""; # add space at the end of 'str' string = string + " "; n = len(string); # traversing 'str' for i in range(n) : # accumulating characters of the current word if (string[i] != ' ') : word = word + string[i]; else : # if 'word' is not palindrome then a # add it to 'final_str' if (not (isPalindrome(word))) : final_str += word + " "; # reset word = ""; # required final string return final_str; # Driver Code if __name__ == "__main__" : string = "Text contains malayalam and level words"; print(removePalinWords(string)); # This code is contributed by AnkitRai01
C#
// C# implementation to remove all the // palindromic words from the given sentence using System; class GFG { // function to check if 'str' is // palindrome static bool isPalindrome(string str) { int i = 0, j = str.Length - 1; // traversing from both the ends while (i < j) { // not palindrome if (str[i++] != str[j--]) return false; } // palindrome return true; } // function to remove all the // palindromic words from the // given sentence static String removePalinWords(string str) { // 'final_str' to store the final // string and 'word' to one by one // store each word of 'str' string final_str = "", word = ""; // add space at the end of 'str' str = str + " "; int n = str.Length; // traversing 'str' for (int i = 0; i < n; i++) { // accumulating characters of // the current word if (str[i] != ' ') word = word + str[i]; else { // if 'word' is not palindrome // then a add it to 'final_str' if (!(isPalindrome(word))) final_str += word + " "; // reset word = ""; } } // required final string return final_str; } // Driver code public static void Main () { string str = "Text contains malayalam " + "and level words"; Console.WriteLine(removePalinWords(str)); } } // This code is contributed by vt_m.
Javascript
<script> // Javascript implementation to remove all the // palindromic words from the given sentence // function to check if 'str' is palindrome function isPalindrome(str) { var i = 0, j = str.length - 1; // traversing from both the ends while (i < j) // not palindrome if (str[i++] != str[j--]) return false; // palindrome return true; } // function to remove all the palindromic words // from the given sentence function removePalinWords(str) { // 'final_str' to store the final string and // 'word' to one by one store each word of 'str' var final_str = "", word = ""; // add space at the end of 'str' str = str + " "; var n = str.length; // traversing 'str' for (var i = 0; i < n; i++) { // accumulating characters of the current word if (str[i] != ' ') word = word + str[i]; else { // if 'word' is not palindrome then a // add it to 'final_str' if (!(isPalindrome(word))) final_str += word + " "; // reset word = ""; } } // required final string return final_str; } // Driver program to test above var str = "Text contains malayalam and level words"; document.write( removePalinWords(str)); // This code is contributed by itsok. </script>
Python3
# Python program for the above approach # Function which returns last word def removePalindrome(string): # Split by space and converting # String to list and lis = list(string.split(" ")) # length of list length = len(lis) # Taking new list newlis = [] # loop till length of list for i in range(length): # check if the word is palindrome if(lis[i] != lis[i][::-1]): newlis.append(lis[i]) return newlis # Driver code string = "Text contains malayalam and level words" print(*removePalindrome(string))
Publicación traducida automáticamente
Artículo escrito por ayushjauhari14 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA