Data Structures and Algorithms in Java
6th Edition
ISBN: 9781118771334
Author: Michael T. Goodrich
Publisher: WILEY
expand_more
expand_more
format_list_bulleted
Textbook Question
Chapter 5, Problem 18C
Write a short recursive Java method that determines if a string s is a palindrome, that is, it is equal to its reverse. Examples of palindromes include 'racecar' and 'gohangasalamiimalasagnahog'.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
Write a short recursive Java method that determines if a string s is a palindrome, that is, it is equal to its reverse. Examples of palindromes include 'racecar' and 'mom'. Test the method by asking the user to provide string entries to be checked. Hint: Check the equality of the first and last characters and recur (but be careful to return the correct value for both odd and even-length strings).
Write a short recursive Java method that determines if a strings is a palindrome, that is, it is equal to its reverse.
Examples of palindromes include 'racecar' and 'gohangasalamiimalasagnahog'.
A palindrome is a string that reads the same forward and backward. For example,“deed” and “level” are palindromes. Write an algorithm in pseudocode that testswhether a string is a palindrome. Implement your algorithm as a static method inJava. The method should call itself recursively and determine if the string is apalindrome.Write a main method that reads a string from the user as input and pass it to thestatic method. You need to validate the string and make sure it contains only letters(no digits or special characters are allowed). The main method should displaywhether the string is a palindrome or not.
a) Read the string from the user and validate it.b) Create a method that calls itself recursively and returns whether thestring is a palindrome or not.c) Include a test table with at least the following test cases:1. Invalid input. For example, string contains a number or specialcharacter.2. A valid string that is a palindrome.3. A valid string that is not a palindrome.
Chapter 5 Solutions
Data Structures and Algorithms in Java
Ch. 5 - Prob. 1RCh. 5 - Prob. 2RCh. 5 - Prob. 3RCh. 5 - Prob. 4RCh. 5 - Prob. 5RCh. 5 - Draw the recursion trace for the execution of...Ch. 5 - Prob. 7RCh. 5 - Describe a recursive algorithm for converting a...Ch. 5 - Prob. 9RCh. 5 - Prob. 10R
Ch. 5 - Prob. 11CCh. 5 - Prob. 12CCh. 5 - Give a recursive algorithm to compute the product...Ch. 5 - In Section 5.2 we prove by induction that the...Ch. 5 - Write a recursive method that will output all the...Ch. 5 - In the Towers of Hanoi puzzle, we are given a...Ch. 5 - Write a short recursive Java method that takes a...Ch. 5 - Write a short recursive Java method that...Ch. 5 - Use recursion to write a Java method for...Ch. 5 - Write a short recursive Java method that...Ch. 5 - Prob. 21CCh. 5 - Prob. 22CCh. 5 - Prob. 23CCh. 5 - Isabel has an interesting way of summing up the...Ch. 5 - Prob. 25CCh. 5 - Prob. 26CCh. 5 - Prob. 27PCh. 5 - Write a program for solving summation puzzles by...Ch. 5 - Prob. 29PCh. 5 - Write a program that can solve instances of the...
Additional Engineering Textbook Solutions
Find more solutions based on key concepts
What is the difference between a class and an object?
Computer Science: An Overview (13th Edition) (What's New in Computer Science)
Write a statement that assigns the value 56893.12 to the first column of the first row of the array defined in ...
Starting Out with C++ from Control Structures to Objects (8th Edition)
Consider the adage Never ask a question for which you do not want the answer. a. Is following that adage ethica...
Experiencing MIS
Porter’s competitive forces model: The model is used to provide a general view about the firms, the competitors...
Management Information Systems: Managing The Digital Firm (16th Edition)
Find AB and BA given A=[203415] and B=[137032].
Differential Equations: Computing and Modeling (5th Edition), Edwards, Penney & Calvis
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Similar questions
- Write a static recursive method in Java called mRecursion that displays all of the permutations of the charactersin a string passed to the method as its argument. For example, the character sequence abc has thefollowing permutations: acb, bac, bca, cab, cba. Then Write a static method called getInput that get aninput string from the user and passed it to the mRecursion method written above in a method call.Please does so using what I already had //Get input from in to call recursive method //to display those char permutations public static String getInput ( ) { Scanner in = new Scanner(System.in); String combination = in.nextLine(); System.out.println("Enter string:); return stringComb; //Method to show permutations of a desired string// This only return 3 string combination for some reason static void myRecursion(String aString) { //isEmpty check if ( aString.length() == 0){…arrow_forwardGiven a long string use recursion to traverse the string and replace every vowel (A,E,I,O,U) with an @ sign. You cannot change the method header. public String encodeVowels(String s){ // Your code here }arrow_forwardWrite a program that has a main() function that calls a recursive method repeatPrint(String s, .....) that prints out the strings as shown in the example below: repeat Print ("CHICAGO", ....); C CH CHI CHIC CHICA CHICAG CHICAGO CHICAGO HICAGO ICAGO CAGO AGO GO 0arrow_forward
- 4. A palindrome is a word that has the same spelling forwards and backwards, like "MADAM". Write a recursive Java method to check if a string is a palindrome.arrow_forwardWrite a java program with a method that reverses a string The method must accept one parameter of type String (string to reverse), and returns every second element from the end to the beginning. For example: String: thisisstringResult is: g i t s s harrow_forwardimport java.util.Scanner; public class LabProgram { // Recursive method to reverse a string public static String reverseString(String str) { // Base case: if the string is empty or has only one character, return the string as is if (str.isEmpty() || str.length() == 1) { return str; } else { // Recursive step: move the first character to the end and reverse the remaining substring return reverseString(str.substring(1)) + str.charAt(0); } } public static void main(String[] args) { Scanner scnr = new Scanner(System.in); String input, result; input = scnr.nextLine(); // Call the reverseString() method result = reverseString(input); // Output the result System.out.printf("Reverse of \"%s\" is \"%s\".%n", input, result); }}arrow_forward
- Write a static recursive method in Java called mrecursiv that displays all of the permutations of the charactersin a string passed to the method as its argument. For example, the character sequence abc has thefollowing permutations: acb, bac, bca, cab, cba. Then Write a static method called getInput that get aninput string from the user and passed it to the mrecursiv method written above in a method call.arrow_forwardDetermine whether a string is a palindromeA palindrome is a string of characters that reads the same from right to left as it does from left to right, regardless of punctuation and spaces.The specifications for this assignment are: •Write and test a non-recursive solution in Java that determines whether a string is a palindrome •Your program should consist of at least two methods: (1) the main method (2) the method which performs the task of determining whether the specified string is a palindrome. You should name this method isPalindrome. You should name the class that contains your “main” method and the isPalindrome method FindPalindrome. •You must use a Stack and a Queue in your solution: Write your own Stack and Queue based on the Vector in the Java API and use those in your solution. You should name those classes StackVector and QueueVector respectively. You already have access to the relevant exception classes and interfaces for the above ADTs. •All of your belong to a Java…arrow_forwardSolution in Java Implement a method removeWord() that takes two string parameters: sentence - the sentence you are to remove a word from. word - the word you are to remove from the sentence. Your method should take a string, sentence and remove word from it. It will return a new string without word in the sentence. Examples removeWord("One two three four", "two") → "One three four" ● removeWord("Bob has a kid", "kid") → "Bob has a" (Ctrl)arrow_forward
- Write a recursive method toNumber that forms the integer sum of all digit characters in a string. For example, the result of toNumber("3ac4") would be 7. [Hint: If next is a digit character ('0' through '9'), Character.isDigit(next) is true and the numeric value of next is Character.digit(next, 10)].arrow_forwardsolve it without using Arrays and the method should take int and return a String Write a recursive method in java that returns a string that contains the octal representation of a positive integer. Test your method. Hint: An octal number is the base-8 number system, and uses the digits 0 to 7. For example, the number 12 can be converted to octal number as follows: Divide by 8, the remainder represents the first digit so 12/8 = 1 and the remainder is 4 so the first digit is 4. The quotient is 1. Then we divide 1 over 8 we get zero and the remainder is 1. The second digit is 1 and we stop. The equivalent octal number for 12 is 14.arrow_forwardConsider the following recursive method in Java that determines ifa string is a palindrome (i.e., reads the same forward or backwards) or not: Public boolean isPalindrome ( String str ){If( str.length() ≤ 1 )return true;elsereturn ( str.charAt (0) == str.charAt( str.length() – 1 ) &&isPalindrome( str.substring(1..str.length() - 1)));} // end of isPalindrome a. Explain convincingly why the recurrence below for f(n), where n is the length of the string parameter str, is a correct expression for the number of primitive operationsrequired by a call isPalindrome.t(0) = Θ(1)t(1) = Θ(1)t(?) = t(? − 2) + Θ(1)b. Show that t(n) = Θ(n), solves the recurrence for t(n) in (a) above.arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education
Introduction to Big O Notation and Time Complexity (Data Structures & Algorithms #7); Author: CS Dojo;https://www.youtube.com/watch?v=D6xkbGLQesk;License: Standard YouTube License, CC-BY