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
I need help to solve the following case, thank you
hi I would like to get help to resolve the following case
Could you help me to know  features of the following concepts: - defragmenting. - dynamic disk. - hardware RAID
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,