Я работаю над проектом, в котором я должен разработать набор классов для реализации BST, который позволяет мне кодировать слово в азбуке Морзе и переводить азбуку Морзе в буквенно-цифровой формат.
Мне предоставили следующее: Общая реализация BST -> https://pastebin.com/mGLY2V25
Этот класс реализует следующий интерфейс:
public interface BSTInterface<E> {
boolean isEmpty();
void insert(E element);
void remove(E element);
int size();
int height();
E smallestElement();
Iterable<E> inOrder();
Iterable<E> preOrder();
Iterable<E> posOrder();
Map<Integer, List<E>> nodesByLevel();
}
И до сих пор я придумал следующее:
class MorseTree extends BST<MorseNode> {
public MorseTree() {
init();
}
private void init() {
BufferedReader in;
InputStream inputStream = getClass().getResourceAsStream("/morse_V3.txt");
in = new BufferedReader(new InputStreamReader(inputStream));
insert(new MorseNode(new String[]{"start"}));
MorseNode last = root.getElement();
in.lines().forEach(line -> {
String[] temp = line.trim().replaceAll(" +", " ").split(" ");
MorseNode w = new MorseNode(temp);
for (int i = 0; i < temp[0].length(); i++) {
}
});
}
@Override
public void insert(MorseNode element) {
root = insert(element, root);
}
private Node<MorseNode> insert(MorseNode element, Node<MorseNode> node) {
if (node == null) {
return new Node<>(element, null, null);
}
}
}
public class MorseNode implements Comparable<MorseNode> {
private String morse;
private Character letter;
private String tipo;
public MorseNode(String[] word) {
this.morse = word[0];
this.letter = word[1].charAt(0);
this.tipo = word[2];
}
@Override
public int compareTo(MorseNode o) {
if (letter == o.letter) {
return 0;
}
}
@Override
public String toString() {
return Character.toString(letter);
}
}
( Pastebin )
Чтобы построить дерево, я должен прочитать файл csv / txt и вставить его,Исходя из того, что я понял, идея заключается в том, что я должен реализовать метод CompareTo в классе таким образом, чтобы предоставленный метод вставки автоматически вставлял его.
Это моя проблема.Вот уже две недели я пытаюсь и не могу понять, как сравнить две строки Морса.
Любая помощь или предложения приветствуются!