Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Create a method called append(). Given two linked lists, join them together to give one. So if the lists are [1,3,7,4] and [2,4,5,8,1], the result
Create a method called append(). Given two linked lists, join them together to give one. So if the lists are [1,3,7,4] and [2,4,5,8,1], the result is [1,3,7,4,2,4,5,8,1].
public class Link { public long dData; // data item public Link next; // next link in list // ------------------------------------------------------------- public Link(long d) // constructor { dData = d; } // ------------------------------------------------------------- public void displayLink() // display this link { System.out.print(dData + " "); } // ------------------------------------------------------------- } // end class Link public class FirstLastList { private Link first; // ref to first link private Link last; // ref to last link // ------------------------------------------------------------- public FirstLastList() // constructor { first = null; // no links on list yet last = null; } // ------------------------------------------------------------- public boolean isEmpty() // true if no links { return first == null; } // ------------------------------------------------------------- public void insertFirst(long dd) // insert at front of list { Link newLink = new Link(dd); // make new link if (isEmpty()) // if empty list, { last = newLink; // newLink <-- last } newLink.next = first; // newLink --> old first first = newLink; // first --> newLink } // ------------------------------------------------------------- public void insertLast(long dd) // insert at end of list { Link newLink = new Link(dd); // make new link if (isEmpty()) // if empty list, { first = newLink; // first --> newLink } else { last.next = newLink; // old last --> newLink } last = newLink; // newLink <-- last } // ------------------------------------------------------------- public long deleteFirst() // delete first link { // (assumes non-empty list) long temp = first.dData; if (first.next == null) // if only one item { last = null; // null <-- last } first = first.next; // first --> old next return temp; } // ------------------------------------------------------------- public void displayList() { System.out.print("List (first-->last): "); Link current = first; // start at beginning while (current != null) // until end of list, { current.displayLink(); // print data current = current.next; // move to next link } System.out.println(""); } // ------------------------------------------------------------- public class FirstLastApp { public static void main(String[] args) { //make a new list FirstLastList theList = new FirstLastList(); theList.insertFirst(22); // insert at front theList.insertFirst(44); theList.insertFirst(66); theList.insertLast(11); // insert at rear theList.insertLast(33); theList.insertLast(55); theList.displayList(); // display the list theList.deleteFirst(); // delete first two items theList.deleteFirst(); theList.displayList(); // display again FirstLastList theList2 = new FirstLastList(); theList2.insertFirst(01); // insert at front theList2.insertFirst(02); theList2.insertFirst(06); theList2.insertLast(10); // insert at rear theList2.insertLast(33); theList2.insertLast(58); theList2.displayList(); // display the list } // end main() } // end class FirstLastApp
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started