мета-данные страницы
Загрузка не удалась. Возможно, проблемы с правами доступа?
Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| java:elective:lesson5 [28/02/2013 14:29] – создано nbazhenov | java:elective:lesson5 [07/03/2013 14:57] (текущий) – nbazhenov | ||
|---|---|---|---|
| Строка 67: | Строка 67: | ||
| Допишите методы '' | Допишите методы '' | ||
| + | |||
| + | ===== Задание 5.2 ===== | ||
| + | |||
| + | Преобразуйте написанный вами класс в класс, предназначенный для работы со строками. Получившийся класс должен выглядеть примерно так: | ||
| + | |||
| + | <code java> | ||
| + | public class ModifiedBinarySearchTree{ | ||
| + | private static class Node{ | ||
| + | String data = null; | ||
| + | Node parent = null; | ||
| + | Node left = null; | ||
| + | Node right = null; | ||
| + | |||
| + | Node (String data){ | ||
| + | this.data = data; | ||
| + | } | ||
| + | } | ||
| + | |||
| + | private Node root; | ||
| + | |||
| + | public ModifiedBinarySearchTree(String data){ | ||
| + | root = new Node(data); | ||
| + | } | ||
| + | |||
| + | public void treeInsert(String data){ | ||
| + | Node y = null; | ||
| + | Node x = root; | ||
| + | |||
| + | while(x != null){ | ||
| + | y = x; | ||
| + | if(data.compareTo(x.data) < 0) | ||
| + | x = x.left; | ||
| + | else | ||
| + | x = x.right; | ||
| + | } | ||
| + | |||
| + | Node z = new Node(data); | ||
| + | z.parent = y; | ||
| + | |||
| + | if(y == null) | ||
| + | root = z; | ||
| + | else{ | ||
| + | if(data.compareTo(y.data) < 0) | ||
| + | y.left = z; | ||
| + | else | ||
| + | y.right = z; | ||
| + | } | ||
| + | } | ||
| + | |||
| + | /* Остальные методы (модифицированные соответствующим образом) */ | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Дан {{: | ||
| + | |||
| + | Код для чтения из файла и записи в файл: | ||
| + | |||
| + | <code java> | ||
| + | /* чтение из файла list_of_countries.txt и сохранение списка стран в виде ArrayList */ | ||
| + | |||
| + | BufferedReader inputFile = null; | ||
| + | try { | ||
| + | inputFile = new BufferedReader(new FileReader(" | ||
| + | } catch (FileNotFoundException e) { | ||
| + | e.printStackTrace(); | ||
| + | } | ||
| + | |||
| + | String tmpString; | ||
| + | ArrayList< | ||
| + | try { | ||
| + | while ((tmpString = inputFile.readLine()) != null) | ||
| + | arr.add(tmpString); | ||
| + | } catch (IOException e) { | ||
| + | e.printStackTrace(); | ||
| + | } | ||
| + | |||
| + | |||
| + | /* запись списка стран в файл alphabetical_list_of_countries.txt */ | ||
| + | |||
| + | BufferedWriter outputFile = null; | ||
| + | try { | ||
| + | outputFile = new BufferedWriter(new FileWriter(" | ||
| + | } catch (IOException e) { | ||
| + | e.printStackTrace(); | ||
| + | } | ||
| + | |||
| + | try { | ||
| + | for (int i = 0; i < arr.size(); i++){ | ||
| + | outputFile.write(arr.get(i)); | ||
| + | outputFile.newLine(); | ||
| + | } | ||
| + | } catch (IOException e) { | ||
| + | e.printStackTrace(); | ||
| + | } finally{ | ||
| + | try{ | ||
| + | if(outputFile != null){ | ||
| + | outputFile.flush(); | ||
| + | outputFile.close(); | ||
| + | } | ||
| + | } | ||
| + | catch(IOException e){ | ||
| + | e.printStackTrace(); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| ;;# | ;;# | ||
| [[java: | [[java: | ||
| ;;# | ;;# | ||