Привет У меня есть этот код, который упорядочивает список строк в порядке, я также могу сортировать массив по возрастанию, так как есть много учебников, которые помогут мне. Проблема заключается в сортировке чисел с прикрепленными буквами. Это возможно? Вот что я до сих пор.Как получить отдельно связанный список для сортировки шестнадцатеричных чисел
import java.io.File;
import java.io.IOException;
import java.util.Scanner;
public class LinkedList2 {
public static class Node {
public String value;
public Node next;
}
static File dataInpt;
static Scanner inFile;
public static void main(String[] args) throws IOException {
inFile = new Scanner("20\r\n" + "38\r\n" + "5c\r\n" + "2b\r\n" + "54\r\n" + "63\r\n" + "53\r\n" + "43\r\n" + "40\r\n"
+ "14\r\n" + "2a\r\n" + "42\r\n" + "63\r\n" + "63\r\n" + "5c\r\n" + "4c\r\n");
Node first = insertInOrder();
printList(first);
}
public static Node getNode(String element) {
Node temp = new Node();
temp.value = element;
temp.next = null;
return temp;
}
public static void printList(Node head) {
Node ptr; // not pointing anywhere
for (ptr = head; ptr != null; ptr = ptr.next) {
System.out.println(ptr.value);
}
System.out.println();
}
public static Node insertInOrder() {
Node current = getNode(inFile.next());
Node first = current, last = current;
while (inFile.hasNext()) {
if (first != null && current.value.compareTo(first.value) < 0) {
current.next = first;
first = current;
} else if (last != null && current.value.compareTo(last.value) > 0) {
last.next = current;
last = current;
} else {
Node temp = first;
while (current.value.compareTo(temp.value) < 0) {
temp = temp.next;
}
current.next = temp.next;
temp.next = current;
}
current = getNode(inFile.next());
}
return first;
}
}
Я попытался это, но получаю это исключение 'Исключение в потоке«главный»java.lang.RuntimeException: Uncompilable исходного код - ошибочный типа: LinkedList2.insertInOrder сим \t на LinkedList2.main (LinkedList2.java:29) Java Результат: 1 – user5743264
Были проблемы с закрытием парантеса. Извините, я не пытался его скомпилировать. Попробуй еще раз. –
Я все еще получаю исключение в строке 29, говоря, что метод insertInOrder в классе LinkedList2 не может применяться к заданным типам; требуется: Компаратор не найден: аргументы аргументов отсутствуют: фактические и формальные списки аргументов различаются по длине –
user5743264