Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Please help me code the following in: JAVA Please use many COMMENTS Full points will be awarded, thanks in advance! UsingStackSuitorsLab class: import java.util.LinkedList; import

Please help me code the following in: JAVA

Please use many COMMENTS

Full points will be awarded, thanks in advance!

image text in transcribedimage text in transcribedimage text in transcribed

UsingStackSuitorsLab class:

import java.util.LinkedList;

import java.util.Queue;

public class UsingStacksSuitorsLab implements Runnable {

private static int threadCount = 0;

private String name;

public UsingStacksSuitorsLab() {

name = "#" + threadCount++ + "Thread";

}

public static void main(String[] args) {

String s1 = "food"; /ot a palindrome

String s2 = "racecar"; //a palindrome

System.out.println("String1 is \"" + s1 + "\"");

System.out.println("String2 is \"" + s2 + "\"");

/* System.out.println(s1 + " reversed is: ");

printReverse(s1);

System.out.println(s2 + " reversed is: ");

printReverse(s2);

recPrintReverse(s1);

System.out.println();

recPrintReverse(s2);

System.out.println();

System.out.println(s1 + " is a palindrome: " + isPalindrome(s1));

System.out.println(s2 + " is a palindrome: " + isPalindrome(s2));

System.out.println(s1 + " is a palindrome(recursively): " + isPalindromeRec(s1));

System.out.println(s2 + " is a palindrome(recursively): " + isPalindromeRec(s2));

System.out.println("Did we build a Queue of Threads and start them? " + buildThreadQueue());

int n = 6;

System.out.println("For " + n + " suitors, stand in place:" + findPlaceToStand(n));

n = 10;

System.out.println("For " + n + " suitors, stand in place:" + findPlaceToStand(n));*/

}

public static void printReverse(String target) {

//todo: use a stack

}

public static void recPrintReverse(String target) {

//todo

}

public static boolean isPalindrome(String input) {

//todo: use a stack

}

public static boolean isPalindromeRec(String sentence) {

//todo

}

public static int findPlaceToStand(int numSuitors) {

//todo

return -1;

}

public static boolean buildThreadQueue() { //returns true upon success

Queue q = new LinkedList(); //comment this out and use your own Queue

//when our program starts up, it might create multiple threads to use

//q.enqueue( new Thread(new UsingStacksSuitorsLab()));

System.out.println("Initial Thread order:");

q.toString();

//We need to iterate over our pool of threads and call start() on each one

//Make a loop that dequeues a thread, calls start on it, and enqueues it again

//for(?) {

Thread curreent = q.deque();

current.start();

q.enqueue(current);

/* current = get a thread

current.start();

put the thread back

}*/

System.out.println("Thread order after start()ing:");

q.toString();

return true; //on successful start

}

/*

* No need to edit anything below here,

* unless you'd like to change the

* behaviour of each thread in the thread pool above

*/

@Override

public void run() {

for(int i = 0; i

System.out.println(name + ": " + i + "th iteration");

try {

Thread.sleep(10);

} catch (InterruptedException e) {

//do nothing here

}

}

}

}

Introduction to The Royal Suitors In an ancient land, the beautiful princess Eve (or handsome prince Val) had many suitors. Being royalty, it was decided that a special process must be used to determine which suitor would win the hand of the prince/princess. First, all of the suitors would be lined up one after the other and assigned numbers. The first suitor would be number 1, the second number 2, and so on up to the last suitor, number n. Starting at the suitor in the first position, she/he would then count three suitors down the line (because of the three letters in his/her name) and that suitor would be eliminated and removed from the line. The prince/princess would then continue, counting three more suitors, and eliminate every third suitor. When the end of the line is reached, counting would continue from the beginning. For example, if there were 6 suitors, the elimination process would proceed as follows: 123456 12456 1245 initial list of suitors, starting count from 1 suitor 3 eliminated, continue counting from 4 suitor 6 eliminated, continue counting from 1 suitor 4 eliminated, continue counting from 5 suitor 2 eliminated, continue counting from 5 suitor 5 eliminated, 1 is the lucky winner 125 15 Introduction to The Royal Suitors In an ancient land, the beautiful princess Eve (or handsome prince Val) had many suitors. Being royalty, it was decided that a special process must be used to determine which suitor would win the hand of the prince/princess. First, all of the suitors would be lined up one after the other and assigned numbers. The first suitor would be number 1, the second number 2, and so on up to the last suitor, number n. Starting at the suitor in the first position, she/he would then count three suitors down the line (because of the three letters in his/her name) and that suitor would be eliminated and removed from the line. The prince/princess would then continue, counting three more suitors, and eliminate every third suitor. When the end of the line is reached, counting would continue from the beginning. For example, if there were 6 suitors, the elimination process would proceed as follows: 123456 12456 1245 initial list of suitors, starting count from 1 suitor 3 eliminated, continue counting from 4 suitor 6 eliminated, continue counting from 1 suitor 4 eliminated, continue counting from 5 suitor 2 eliminated, continue counting from 5 suitor 5 eliminated, 1 is the lucky winner 125 15

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_2

Step: 3

blur-text-image_3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Building Database Driven Catalogs

Authors: Sherif Danish

1st Edition

0070153078, 978-0070153073

More Books

Students also viewed these Databases questions

Question

Define Scientific Management

Answered: 1 week ago

Question

Explain budgetary Control

Answered: 1 week ago

Question

Solve the integral:

Answered: 1 week ago

Question

What is meant by Non-programmed decision?

Answered: 1 week ago