Arhn - архитектура программирования

чтение строк из текстового файла и сортировка их в связанный список java

Мне нужно прочитать каждую строку из текстового файла и сначала отсортировать ее по длине, а затем по позиции в исходном документе, прежде чем добавлять строки в связанный список.

Затем содержимое списка должно быть распечатано, строка за строкой, с префиксом, указывающим, какой номер строки выводится и сколько символов, отличных от пробела, находится в строке.

Ниже приведен пример ввода/вывода:

Input (i.e. contents of text file)

this
is
just
a
test

Output

1/1: a
2/2: is
3/4: this
4/4: just
5/4: test

Ответы:


1
  1. Мне нужно прочитать каждую строку из текстового файла: используйте FileReader и BufferedReader
  2. и сначала отсортируйте его по длине, а затем по положению в исходном документе, прежде чем добавлять строки в связанный список: создайте HashMap с (String, lineNo) исходного документа.
  3. Используйте компаратор для сортировки - сначала по длине, затем по строке pos (получите ее из hashMap) с помощью тернарного оператора.

  4. сколько не пробельных символов в строке: разделите строку, используя «s+». добавьте длины всех подмассивов, используя цикл for.

  5. при печати из списка массивов печатайте count + nonSpaceChars in line + line .

Надеюсь этого будет достаточно

23.09.2013

2

Вам нужно будет использовать файл и сканер. Код будет выглядеть примерно так:

import java.io.*;
import java.util.scanner;

public class ReadAndWrite {
    public static void main(String[] args) throws IOException {

        Scanner scan = new Scanner(new File("yourfile.txt"));

        int i = 1;
        while(scan.hasNext()) {
            String s = scan.nextLine();
            System.out.println("Line " + i + " says " + s + " and has " + s.length() + " characters.";
            i++;
        }
        System.out.println("/nNo more lines in the file.");
    }
}
23.09.2013

3

Вместо того, чтобы решать это за вас, я предоставлю вам различные ссылки, которые помогут вам решить вашу задачу.

1) Чтение файла в JAVA

2) Различные строковые операции, которые можно выполнять над прочитанной строкой: операции со строками< /а>

3) Сортировка коллекций в JAVA с помощью компараторов: сортировка коллекций

23.09.2013
  • Спасибо, именно такого совета я и ждал! 24.09.2013

  • 4
  • Пожалуйста, не используйте DataInputStream для текста. 25.09.2013
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..