Important Notice:

Practice-It will be discontinued as of November 1st, 2024. After this date, the website will remain online for a transitional period, but login will be restricted to University of Washington NetID authentication. This marks the next phase towards the platform's full retirement. Thank you for your use and support of the application over the years.

If you are looking for an alternative, a similar tool, CodeStepByStep, was developed independently by the original author of Practice-It, and is available at codestepbystep.com**

logo Practice-It logo

midtermLinkedListNodes4c

Language/Type: Java ListNodes LinkedLists
Related Links:
Author: Stuart Reges (on 2021/04/02)

Write the code necessary to convert the following sequences of ListNode objects:

p -> [1] -> [2]/
q -> [3] -> [4]/

Into this sequence of ListNode objects:

p -> [4] -> [2]/
q -> [1] -> [3]/

There may be more than one way to write the code, but you are NOT allowed to change any existing node's data field value. You also should not create new ListNode objects unless necessary to add new values to the chain, but you may create a single ListNode variable to refer to any existing node if you like. If a variable does not appear in the "after" picture, it doesn't matter what value it has after the changes are made.

Assume that you are using ListNode class as defined in lecture and section:

public class ListNode {
    public int data;       // data stored in this node
    public ListNode next;  // a link to the next node in the list

    public ListNode() { ... }
    public ListNode(int data) { ... }
    public ListNode(int data, ListNode next) { ... }
}
Type your solution here:


This problem asks for bare code. Submit a fragment of Java code as described. Do not write any class or method heading around your code; just write the lines of code that will produce the result described.

You must log in before you can solve this problem.


Log In

If you do not understand how to solve a problem or why your solution doesn't work, please contact your TA or instructor.
If something seems wrong with the site (errors, slow performance, incorrect problems/tests, etc.), please

Is there a problem? Contact a site administrator.