JAVA: Write a recursive method named threeSum that accepts a list of integers and prints all combinations of three integers in the list that sum to 0. For example, if given the list [-1, 0, 1, 2, -1, -4], print the following lines of output: [-1, 0, 1] [-1, 2, -1] [0, 1, -1] You may print the lines of output in any order. The elements in each three-element sublist should appear in the same relative order that they appeared in the original list. Do not print duplicate lists; if the same exact sublist can be made in multiple ways, print it only once. If there are no combinations of three elements that sum to 0, print no output. The list passed to your method must be back to its original state at the end of the call. Either do not modify it, or if you modify it, fully undo your modifications before the method returns. Constraints: Do not declare any global variables. You can use any data structures you like, and your code can contain loops, but the overall algorithm must be recursive and must use backtracking. You are allowed to define other "helper" methods if you like; they are subject to these same constraints.
JAVA:
Write a recursive method named threeSum that accepts a list of integers and prints all combinations of three integers in the list that sum to 0. For example, if given the list [-1, 0, 1, 2, -1, -4], print the following lines of output:
[-1, 0, 1] [-1, 2, -1] [0, 1, -1]
You may print the lines of output in any order. The elements in each three-element sublist should appear in the same relative order that they appeared in the original list. Do not print duplicate lists; if the same exact sublist can be made in multiple ways, print it only once. If there are no combinations of three elements that sum to 0, print no output.
The list passed to your method must be back to its original state at the end of the call. Either do not modify it, or if you modify it, fully undo your modifications before the method returns.
Constraints: Do not declare any global variables. You can use any data structures you like, and your code can contain loops, but the overall
**Please include an explanation so I can understand how you got the solution. :) thank you!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images