Q1 : Find the kth to last element of a singly linked list (the linked list size is unknown) and return the element (the address of the node).

Implement the following pseudo code:

  • Create two pointers to store current and runner, set both to point head.
  • Iterate the runner pointer with k times
  • Iterate the runner and current pointer at the same speed over the list.
  • Return the current pointer.

See diagram: see image.

Q2 : Remove duplicates from an unsorted linked list

  • Create three pointers to store the current, runner, and duplicate
  • The runner pointer points the current
  • Iterate the list with the runner pointer
    • If current data is same as runner next data, then
    • Store the runner next node in duplicate pointer
    • Set runner next to the next of the runner next node.
    • Remove the node via duplicate pointer.
    • Else, set the runner to runner next.

See diagram: see image.

Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.