Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
Starting Out with Java: From Control Structures through Data Structures (4th Edition) (What's New in Computer Science)
4th Edition
ISBN: 9780134787961
Author: Tony Gaddis, Godfrey Muganda
Publisher: PEARSON
bartleby

Concept explainers

Question
Book Icon
Chapter 19, Problem 1PC
Program Plan Intro

Generic Linked Lists

Program Plan:

  • Import required package.
  • Define “GenericLinkedList” class.
    • Define “Node” class.
      • Declare a value of a list element in generic type.
      • Declare next node in the list using “Node” class.
      • Parameterized constructor for “Node” class with two parameters.
      • Parameterized constructor for “Node” class with one parameter.
    • Declare variable for head of the list.
    • Declare variable for last element of list.
    • Define the method “clear()” which is used to remove all elements from the list.
      • Initializes the index to “0”.
      • If the head of the list is not “null”, then set temp node to head of the list and performs “while” loop.
        • Remove an element in the list one by one using “while” loop.
          • Set “temp_node” to next value of “temp_node”.
          • Remove the given element by calling the method “remove”.
    • Define the method “get()” which is used to return the value at given index in the list.
      • Initializes “idx” to “0”.
      • If the head of the list is not null, then
        • Set head of list to “tempValue”.
        • Check condition using “while” loop.
          • If “idx” equals to given “index”, then return the element at given position.
          • Otherwise, increment the value of “idx” and set “tempValue” to next value of “tempValue”
    • Define the method “set()” which is used to replace the value at the specified position with the specified element and also return the previous element.
      • Initializes “idx” to “0”.
      • Check condition using “while” loop.
        • If “idx” equals to given “index”, then replace the element at given position and return the previous element.
        • Otherwise, increment the value of “idx” and set “tempValue” to next value of “tempValue”.
    • Define the method “isEmpty()” which is used to compute whether list is in empty or not.
    • Define the method “size()” which is used to compute the size of list.
    • Define the method “add()” which is used to add an element to the list.
    • Define the method “remove” which is used to remove an element from the list.
    • Define main function.
      • Create object for “Scanner” class.
      • Create object “list” in “double” type using “GenericLinkedList” class.
      • Add elements to “list” using “add()” method.
      • Display the elements in list.
      • To test the “set” method.
        • Initializes the index to “-1”.
        • Declare variable in “double” type.
        • Performs “do-while” loop.
          • Read index string from user.
          • Convert the string value in integer.
          • If the user entered index is less than “0” or greater than or equal to “size”, then display an error message.
        • Read the new element for given index.
        • Convert the string to double.
        • Replace the new element in the place of old element by calling the method “set”.
        • Display the old element in the given index.
        • Display the list after calling “set” method.
            • To test the “get” method.
              • Initializes the index to “-1”.
              • Performs “do-while” loop.
                • Read the index from user.
                • Convert the string to integer.
                • If the user entered index is less than “0” or greater than or equal to “size”, then display an error message
              • Display the element at given index by calling the method “get()”.
            • Clear all the elements in the list by calling the method “clear()”.
            • Display the size of list after clearing the list by calling “size()” method.

Blurred answer
Students have asked these similar questions
(Dynamic Programming.) Recall the problem presented in Assign- ment 3 where given a list L of n ordered integers you're tasked with removing m of them such that the distance between the closest two remaining integers is maxi- mized. See Assignment 1 for further clarification and examples. As it turns out there is no (known) greedy algorithm to solve this problem. However, there is a dynamic programming solution. Devise a dynamic programming solution which determines the maximum distance between the closest two points after removing m numbers. Note, it doesn't need to return the resulting list itself. Hint 1: Your sub-problems should be of the form S(i, j), where S(i, j) returns the maximum distance of the closest two numbers when only considering removing j of the first i numbers in L. As an example if L [3, 4, 6, 8, 9, 12, 13, 15], then S(4, 1) = 2, since the closest two values of L' = [3,4,6,8] are 6 and 8 after removing 4 (note, 8-6 = = 2). = Hint 2: For the sub-problem S(i, j),…
(Dynamic Programming.) A group of friends is visiting a number of attractions located along a highway, starting at kilometre 0, placed at distances ɑ1 < A2 < ···
(Greedy Algorithms) Describe an efficient algorithm that, given a set {x1, x2, . . ., xn} of points on the real line, determines the smallest set of unit-length closed intervals that contains all of the given points. Argue that your algorithm is correct.
Knowledge Booster
Background pattern image
Computer Science
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
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
New Perspectives on HTML5, CSS3, and JavaScript
Computer Science
ISBN:9781305503922
Author:Patrick M. Carey
Publisher:Cengage Learning
Text book image
Systems Architecture
Computer Science
ISBN:9781305080195
Author:Stephen D. Burd
Publisher:Cengage Learning
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,