Loading...

Messages

Proposals

Stuck in your homework and missing deadline? Get urgent help in $10/Page with 24 hours deadline

Get Urgent Writing Help In Your Essays, Assignments, Homeworks, Dissertation, Thesis Or Coursework & Achieve A+ Grades.

Privacy Guaranteed - 100% Plagiarism Free Writing - Free Turnitin Report - Professional And Experienced Writers - 24/7 Online Support

Wye river kennel sportsman neck circle queenstown md

19/11/2021 Client: muhammad11 Deadline: 2 Day

Stacks And Queues

Stacks and Queues In this assignment, you will be implementing Stacks and Queues. You will then use stacks and queues to test if words are palindromes, and use stacks to decompose phrases into words (to find new palindromes).

● Implement ​MyStack​ (use the included ​MyLinkedList​ to store the stack elements) ○ Implements ​StackInterface ○ Throws a ​StackException​ if peek or pop are called on an empty stack

● Implement ​MyQueue​ (use ​MyLinkedList​ to store the stack elements) ○ Implements ​QueueInterface ○ Throws a ​QueueException​ if peek or dequeue are called on an empty queue

● Test your MyStack and MyQueue ​thoroughly ● In ​Palindrome.java

○ Implement ​stackToReverseString()​ using MyStack ○ Implement ​reverseStringAndRemoveNonAlpha()​ using ​MyStack ○ Implement ​isPalindrome()​, which returns true if a word or phrase is a

palindrome, using ​MyStack​ and ​MyQueue ○ CHALLENGE: Implement ​explorePalindrome()​ which lists all possible

backwards decompositions of a phrase (e.g. “evil guns” => snug live“), a common trick to make new palindromes (uses MyStack)

● Style requirements ​(NEW!) ○ Indent your code properly

■ There are several mainstream “styles” of indentation, pick one and be consistent. EG: ​https://javaranch.com/styleLong.jsp

○ Name your variables with helpful and descriptive names ■ Whats a good variable name? Here is a ​guide

○ Add comments before every function, and in your code ■ Comments should say ​what you are trying to do​ and ​why ■ Consult this ​guide to commenting

Point breakdown Stacks ​ - 20 points Queues ​ - 20 points Style ​ - 15 points Implementing the functions: String ​stackToReverseString​(MyStack)​ - 10 points String ​reverseStringAndRemoveNonAlpha​(String)​ - 5 points Boolean ​isPalindrome​(String)​ - 10 points

https://javaranch.com/styleLong.jsp
https://a-nickels-worth.blogspot.com/2016/04/a-guide-to-naming-variables.html
https://code.tutsplus.com/tutorials/top-15-best-practices-for-writing-super-readable-code--net-8118
void​ ​explorePalindrome​()​ (and its helper)​ - 20 points

Implementing MyStack and MyQueue In this assignment, we will be making heavy use of the classes ​MyStack​ and ​MyQueue​. You have already implemented ​ MyLinkedList.java​ in a previous assignment. You can use your code, or the sample ​MyLinkedList.java ​provided. Implement ​MyStack.java​ and ​ MyQueue.java ​using the provided interfaces and exceptions. Make sure you have implemented a ​public​ String ​toString​()​ method on MyStack and MyQueue that prints out the contents of the stack from the top down and prints out the queue from the front to back. So, for example, after the following code:

MyStack stack = ​new​ MyStack(); MyQueue queue = ​new​ MyQueue(); stack.push(​"Hello"​); queue.enqueue(​"Hello"​); stack.push(​"big"​); queue.enqueue(​"big"​); stack.push(​"world"​); queue.enqueue(​"world"​);

System.out.println(​"Stack = "​ + stack); System.out.println(​"Queue = "​ + queue);

Then the output would be:

Stack = (world, big, hello)

Queue = (hello, big, world)

Test your code thoroughly!! ​We have provided ​TestQueuesAndStacks.java​ as an example of some ways to test your code, but you will want to edit it to try out many possible situations. Make sure your code behaves ​exactly ​ as you expect it to, before starting the second half of the assignment.

Is this a palindrome? A palindrome is a word or phrase that reads the same backwards and forwards, if you ignore punctuation and spaces. For example:

● A dog! A panic in a pagoda!

● ABBA ● Cigar? Toss it in a can. It is so tragic. ● Yo, bottoms up! (U.S. motto, boy.) ● Stressed was I ere I saw desserts.

(from ​http://www.palindromelist.net/palindromes-y/​) In this part of the assignment, you will be writing several functions in ​Palindrome.java ​to test and create palindromes using your stack and queue implementations.

Example Input & Output Palindrome.java​ takes as input: a ​mode ​, and some ​words. ​The mode is either “test” or “expand”, so the function call will be: Test for palindromes Are these phrases palindromes?

javac Palindrome.java && java Palindrome test "oboe" "ABBA" "I'm alas, a

salami" "evil liver"

'oboe': false

'ABBA': true

'I'm alas, a salami': true

'evil liver': false

Expand palindromes Which words could be added to make this a palindrome?

javac Palindrome.java && java Palindrome expand "an era live" "mug god"

an era live: evil a ren a

an era live: evil aren a

an era live: evil arena

mug god: dog gum

http://www.palindromelist.net/palindromes-y/
Functions to implement: String ​stackToReverseString​(MyStack)​:​ your toString function in your stack class prints out the stack in the order that things would be popped from it. What if we want to turn it into a string in the opposite order (the order that things were ​pushed to it)? In Palindrome.java, we do not have access to the internal representation of the stack’s list. So instead, we have to pop everything off the stack, read it in order and push it pack onto the stack in the original order so that the stack is unchanged (​Whew!​)

● Create an empty string ● Create a new temporary stack ● Pop everything from the original stack onto

the new stack ● Pop everything from the new stack back

onto the original stack ​and​ add it to the string

String ​reverseStringAndRemoveNonAlpha ​(String) Use a stack to reverse a string. Similar to before. Also, we want to not only

● Create a new stack. ● Iterate through the string, and push each character from the string onto the stack, but

only if ​they are alphabetic (ignore spaces and punctuation) ○ Character.isAlphabetic ​will be a useful function here!

● Pop everything from the stack to reconstruct the string in reverse.

● Note: your stack can only contain Objects. Java’s ​char​ datatype isn’t an object though! This means that you will have to wrap it (and later cast it) as a ​Character​ type. Look up the Character class in Java’s documentation, or find out more about wrapper classes here ​.

Boolean ​isPalindrome​(String) Implement this function using ​ both a stack and a queue. To test if a string is a palindrome:

● Convert the string to lowercase (we don’t care about uppercase vs lowercase characters being different)

● Create a new stack and queue. ● Enqueue and push each character (if it is alphabetic, we don’t want to look at white

space or punctuation) ● Pop each character from the stack and dequeue each character from the queue until

one is empty ● Notice how in our above functions, pushing and then popping from a stack ​reversed the

order. ​How will you use this to test whether this string is a palindrome?

void ​explorePalindrome​(String) This function lists all possible endings that would make this string a palindrome, e.g.:

javac Palindrome.java && java Palindrome expand "an era live" "mug god"

an era live: evil a ren a

an era live: evil aren a

an era live: evil arena

First, convert the string to lowercase and use your ​reverseStringAndRemoveNonAlpha function to reverse it and remove non-alphabetical characters. Now, most of the work will be done by a recursive helper function to decompose this new string (“evilarena”) into words. Takes the original string, the reversed string, an index, and the current stack of words we are building up

​public​ ​static​ ​void​ ​decomposeText​(String originalText, String textToDecompose, ​int​ index, MyStack decomposition)

We have provided a function ​ String[] getWords(String text, ​int​ index) ​that uses a dictionary to find which words could be created from a string at a given index. For example getWords(​"isawere"​, ​0​) ​could find the words “i” and “is”, ​ getWords(​"isawere"​, ​2​)​ could find the words (“a”, “aw” and “awe”). A recursion step:

https://en.wikipedia.org/wiki/Primitive_wrapper_class
● If the index is at the end of the word, we are finished, print out the words (using reverse print) and the original text.

● Else: Find the potential words at that index ● For each word:

● Push it to the stack ○ Recurse at the next index (not *just* i++) ○ If it was part of a correct solution, it will print itself out in a subsequent

recursion step (if it reaches a conclusion) ● Pop it from the stack

● Confused? See below for a visual explanation of this approach. ○ As usual, println statements may help you understand your code’s operation if

you get lost. Consider outputting the list of words from getWords, or printing out the ​decomposition​ stack each time you push or pop from it. Just remove your debug statements before turning in your code.

Turning the code in

● Create a directory with the following name: _assignment3 where you replace with your actual student ID. For example, if your student ID is 1234567, then the directory name is 1234567_assignment3

● Put a copy of your edited files in the directory (MyQueue.java, MyStack.java, and Palindrome.java)

● Compress the folder using zip. Zip is a compression utility available on mac, linux and windows that can compress a directory into a single file. This should result in a file named _assignment3.zip (with replaced with your real ID of course).

● Double-check that your code compiles and that your files can unzip properly. You are responsible for turning in working code.

● Upload the zip file through the page for ​Assignment 3 in canvas

https://canvas.ucsc.edu/courses/12730/assignments/40191
Visual example of palindrome search with stacks

Homework is Completed By:

Writer Writer Name Amount Client Comments & Rating
Instant Homework Helper

ONLINE

Instant Homework Helper

$36

She helped me in last minute in a very reasonable price. She is a lifesaver, I got A+ grade in my homework, I will surely hire her again for my next assignments, Thumbs Up!

Order & Get This Solution Within 3 Hours in $25/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 3 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

Order & Get This Solution Within 6 Hours in $20/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 6 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

Order & Get This Solution Within 12 Hours in $15/Page

Custom Original Solution And Get A+ Grades

  • 100% Plagiarism Free
  • Proper APA/MLA/Harvard Referencing
  • Delivery in 12 Hours After Placing Order
  • Free Turnitin Report
  • Unlimited Revisions
  • Privacy Guaranteed

6 writers have sent their proposals to do this homework:

Math Exam Success
ECFX Market
High Quality Assignments
Homework Master
Chartered Accountant
Accounting & Finance Mentor
Writer Writer Name Offer Chat
Math Exam Success

ONLINE

Math Exam Success

I am an academic and research writer with having an MBA degree in business and finance. I have written many business reports on several topics and am well aware of all academic referencing styles.

$48 Chat With Writer
ECFX Market

ONLINE

ECFX Market

I am an elite class writer with more than 6 years of experience as an academic writer. I will provide you the 100 percent original and plagiarism-free content.

$23 Chat With Writer
High Quality Assignments

ONLINE

High Quality Assignments

I find your project quite stimulating and related to my profession. I can surely contribute you with your project.

$27 Chat With Writer
Homework Master

ONLINE

Homework Master

I find your project quite stimulating and related to my profession. I can surely contribute you with your project.

$44 Chat With Writer
Chartered Accountant

ONLINE

Chartered Accountant

As an experienced writer, I have extensive experience in business writing, report writing, business profile writing, writing business reports and business plans for my clients.

$20 Chat With Writer
Accounting & Finance Mentor

ONLINE

Accounting & Finance Mentor

I have worked on wide variety of research papers including; Analytical research paper, Argumentative research paper, Interpretative research, experimental research etc.

$48 Chat With Writer

Let our expert academic writers to help you in achieving a+ grades in your homework, assignment, quiz or exam.

Similar Homework Questions

Lego mindstorms windows xp - Foundation In Special Education - BLOG POST - The cottage at coquet meadows - Solidworks equation syntax error - Bonne annee by jean pierre benoit - Preparation of bromobenzene from phenol - Grand canyon university student teaching requirements - Sfia professional skills acs - The great dictator speech inception - Build orgone energy accumulator - Aim planning process for business messages - What is the impact of rapid environmental changes on organizations - Insert a table of contents in powerpoint - Best practices for it infrastructure security policies - Aristotle nicomachean ethics second edition pdf - Unicef annual report 2013 - Warwick institute of education - We the people 12th edition - Need 2 Page document with proper APA formatting and citations, references and No plagiarism - Sodium chloride equivalent method - Mandy patinkin artis naples january 19 - Benzene burns in oxygen according to the following reaction - Dividend discount model calculator excel - How to sing jingle bells in chinese - Phases of event management - C11 Lesson 6 & 7 Exam SCORE 92.5 PERCENT - Solivia 2.5 solar inverter - What basic principles characterize biological theories of crime causation - Discussion on time value of money - Assignment 8/11 - Box girder bridge failures - Kaibigan sa kalusugan testimonials - Model rocket safety code - Roman numeral for 45 - Migration Act 1958 - Phosphoric acid plus magnesium hydroxide - Flagship report a repair - Macroeconomics - Rabbi sasson hai shoshani - Apollo missions - Weatherford laboratories norway as - Chicago manual sample paper - Interview questions for forensic auditor - Hltaid003 provide first aid assessment workbook answers - Https www webtools ncsu edu learningstyles - Leadership in organizations yukl 8th edition ppt - What is a separation certificate used for - Definition Analysis Responses - A+ geometry answers - Barium chloride magnesium nitrate - Newton heath sure start - Why does wheeled coach have excess inventory - This is how you do it kid the inventorpreneur's handbook - Vce english as an additional language - Violent Crime vs. Property Crime - Infectious Diseases Presentation Project - Opposite of still life - To achieve security and resilience critical infrastructure partners must - David deangelo on being a man download - Post office control account - Writing routine and positive messages in business communication - Electrical wiring colours brown black grey - Rickmeier pumps distributors uk - Rhetorical Analysis - Mantis shrimp vs blue ringed octopus - Research Method and Design - A medieval life cecilia penifader of brigstock - Nature's cutest symbiosis the bobtail squid answer key - Elkay plumbing products division case solution - Pharmacology - Reading about issues - Fish cheeks by amy tan answer key - Blue collar brilliance audience - Please respond if you complete it with in 10-11 hours - Sentencing act 1995 wa - South park fractured but whole raisins ripper character sheets - A marketing case study on nike - What were the most compelling topics learned in this course - Go to quiz personality plus - Writing Discussion - The espresso lane to global markets case study solution - Organization Plan - The coefficient of static friction between hard rubber - Monoprotic vs diprotic acid - Www holscience com - ... - Managing Change and Innovation - Work breakdown structure hospital management system - Ms project cost estimate - Chocolate bar distribution channels - Subject and predicate rap song - 3pg Case Study- ASAP - Health Education Discussion - Discussion 4 - Analyzing Mistakes - The bride comes to yellow sky sparknotes - Butane newman projection c2 c3 - 730 bus timetable uxbridge to hemel hempstead - What worm mitigation phase involves actively disinfecting infected systems - Mtaa super fund usi