Edit the Person.java file so that the natural ordering or a Person is by last name in ascending order. Use the merge sort algorithm to implement the MergeSort sort method. import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) { List people = new ArrayList<>(); people.add(new Person("Frank", "Denton", 73)); people.add(new Person("Mark", "Cohen", 44)); people.add(new Person("Tim", "Smith", 22)); people.add(new Person("Steve", "Denton", 16)); people.add(new Person("Andy", "Ashton", 44)); people.add(new Person("Albert", "Denton", 58)); System.out.println("Before: " + people); List result = MergeSort.sort(people); System.out.println("After: " + result); } } import java.util.Collections; import java.util.List; public class MergeSort { public static List sort(List people) { } } public class Person { private String firstName; private String lastName; private int age; Person(String firstName, String lastName, int age) { this.firstName = firstName; this.lastName = lastName; this.age = age; } @Override public String toString() { return lastName + ", " + firstName + " " + age; } }
Edit the Person.java file so that the natural ordering or a Person is by last name in ascending order.
Use the merge sort
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Person> people = new ArrayList<>();
people.add(new Person("Frank", "Denton", 73));
people.add(new Person("Mark", "Cohen", 44));
people.add(new Person("Tim", "Smith", 22));
people.add(new Person("Steve", "Denton", 16));
people.add(new Person("Andy", "Ashton", 44));
people.add(new Person("Albert", "Denton", 58));
System.out.println("Before: " + people);
List<Person> result = MergeSort.sort(people);
System.out.println("After: " + result);
}
}
import java.util.Collections;
import java.util.List;
public class MergeSort {
public static List<Person> sort(List<Person> people) {
}
}
public class Person {
private String firstName;
private String lastName;
private int age;
Person(String firstName, String lastName, int age) {
this.firstName = firstName;
this.lastName = lastName;
this.age = age;
}
@Override
public String toString() {
return lastName + ", " + firstName + " " + age;
}
}
Step by step
Solved in 4 steps with 2 images