import java.io.*;
public class CriminalsSort {
//create array
static String[][] criminals
= new String[10][3]; // create 3 columns, 10 rows
int i, j;
int smallest; //smallest is the current smallest element
String temp
; //make an element swap
System.
out.
println("Welcome to the criminal records database."); //loop to request to fill array
for (i = 0; i < criminals.length ; i++) {
System.
out.
print("Enter first and last name of criminal: "); criminals[i][0] = br.readLine(); //Criminal Name
System.
out.
print("Enter crime committed: "); criminals[i][1] = br.readLine(); //Criminal Crime
System.
out.
print("Enter year of conviction: "); criminals[i][2] = br.readLine(); //Year of conviction
}
System.
out.
println("******Unsorted list******"); for (i = 0; i < criminals.length; i++) {
System.
out.
println(criminals
[i
][0] + " - " + criminals
[i
][1] + " - " + criminals
[i
][2]); }
System.
out.
println("******Sorted list (by crime)******");
for(i = 0; i < 10; i++){
smallest = i;
for(j = i; j < 10; j++){
if(criminals[i][1].compareTo(criminals[j][1]) > 0){
smallest = j;
}
}
temp = criminals[i][1];
criminals[i][1] = criminals[smallest][1];
criminals[smallest][1] = temp;
}
//output
for(i = 0; i < 10; i++){
System.
out.
println(criminals
[i
][0] + " - " + criminals
[i
][1] + " - " + criminals
[i
][2]); }
System.
out.
println("The list has been sorted.");
}
}
aW1wb3J0IGphdmEuaW8uKjsKcHVibGljIGNsYXNzIENyaW1pbmFsc1NvcnQgewoKICAgIHN0YXRpYyBCdWZmZXJlZFJlYWRlciBiciA9IG5ldyBCdWZmZXJlZFJlYWRlcihuZXcgSW5wdXRTdHJlYW1SZWFkZXIoU3lzdGVtLmluKSk7CiAgICAvL2NyZWF0ZSBhcnJheQogICAgc3RhdGljIFN0cmluZ1tdW10gY3JpbWluYWxzID0gbmV3IFN0cmluZ1sxMF1bM107IC8vIGNyZWF0ZSAzIGNvbHVtbnMsIDEwIHJvd3MKICAgIAogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncyl0aHJvd3MgSU9FeGNlcHRpb24geyAgICAgICAgCiAgICAgICAgaW50IGksIGo7CiAgICAgICAgaW50IHNtYWxsZXN0OyAvL3NtYWxsZXN0IGlzIHRoZSBjdXJyZW50IHNtYWxsZXN0IGVsZW1lbnQKICAgICAgICBTdHJpbmcgdGVtcDsgLy9tYWtlIGFuIGVsZW1lbnQgc3dhcAogICAgICAgIAogICAgICAgIAogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiV2VsY29tZSB0byB0aGUgY3JpbWluYWwgcmVjb3JkcyBkYXRhYmFzZS4iKTsKICAgICAgICAvL2xvb3AgdG8gcmVxdWVzdCB0byBmaWxsIGFycmF5CiAgICAgICAgZm9yIChpID0gMDsgaSA8IGNyaW1pbmFscy5sZW5ndGggOyBpKyspIHsgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnQoIkVudGVyIGZpcnN0IGFuZCBsYXN0IG5hbWUgb2YgY3JpbWluYWw6ICIpOwogICAgICAgICAgICAgICAgY3JpbWluYWxzW2ldWzBdID0gYnIucmVhZExpbmUoKTsgLy9DcmltaW5hbCBOYW1lCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnQoIkVudGVyIGNyaW1lIGNvbW1pdHRlZDogIik7CiAgICAgICAgICAgICAgICBjcmltaW5hbHNbaV1bMV0gPSBici5yZWFkTGluZSgpOyAvL0NyaW1pbmFsIENyaW1lCiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnQoIkVudGVyIHllYXIgb2YgY29udmljdGlvbjogIik7CiAgICAgICAgICAgICAgICBjcmltaW5hbHNbaV1bMl0gPSBici5yZWFkTGluZSgpOyAvL1llYXIgb2YgY29udmljdGlvbgogICAgICAgIH0KICAgICAgICAKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIioqKioqKlVuc29ydGVkIGxpc3QqKioqKioiKTsKICAgICAgICBmb3IgKGkgPSAwOyBpIDwgY3JpbWluYWxzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihjcmltaW5hbHNbaV1bMF0gKyAiIC0gIiArIGNyaW1pbmFsc1tpXVsxXSArICIgLSAiICsgY3JpbWluYWxzIFtpXVsyXSk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiKioqKioqU29ydGVkIGxpc3QgKGJ5IGNyaW1lKSoqKioqKiIpOwogICAgICAgIAogICAgICAgIGZvcihpID0gMDsgaSA8IDEwOyBpKyspewogICAgICAgICAgICBzbWFsbGVzdCA9IGk7CiAgICAgICAgICAgIAogICAgICAgICAgICBmb3IoaiA9IGk7IGogPCAxMDsgaisrKXsKICAgICAgICAgICAgICAgIGlmKGNyaW1pbmFsc1tpXVsxXS5jb21wYXJlVG8oY3JpbWluYWxzW2pdWzFdKSA+IDApewogICAgICAgICAgICAgICAgICAgIHNtYWxsZXN0ID0gajsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICAKICAgICAgICAgICAgdGVtcCA9IGNyaW1pbmFsc1tpXVsxXTsKICAgICAgICAgICAgY3JpbWluYWxzW2ldWzFdID0gY3JpbWluYWxzW3NtYWxsZXN0XVsxXTsKICAgICAgICAgICAgY3JpbWluYWxzW3NtYWxsZXN0XVsxXSA9IHRlbXA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8vb3V0cHV0CiAgICAgICAgZm9yKGkgPSAwOyBpIDwgMTA7IGkrKyl7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihjcmltaW5hbHNbaV1bMF0gKyAiIC0gIiArIGNyaW1pbmFsc1tpXVsxXSArICIgLSAiICsgY3JpbWluYWxzIFtpXVsyXSk7CiAgICAgICAgfQoJU3lzdGVtLm91dC5wcmludGxuKCJUaGUgbGlzdCBoYXMgYmVlbiBzb3J0ZWQuIik7CiAgICAgICAgCiAgICB9Cn0=