кодесурса

Упражнения Java String: Найти первый неповторяющийся символ из потока символов

script1adsense2code
script1adsense3code

Строка Java: упражнение 49 с решением

Напишите программу на Java, чтобы найти первый неповторяющийся символ из потока символов.

Иллюстрированная презентация:


Пример решения:

Java-код:

import java.util.*;
public class Main {
 final static int MXCHAR = 256;
 static void searchForFirstNonRepChar() {
  List < Character > inDLL = new ArrayList < Character > ();
  boolean[] repeatyn = new boolean[MXCHAR];
  String chrstream ="godisgood";
  System.out.println("String: " + chrstream);
  for (int i = 0; i < chrstream.length(); i++) {
   char x = chrstream.charAt(i);
   System.out.println("Reading: " + x);
   if (!repeatyn[x]) {
    if (!(inDLL.contains(x))) {
     inDLL.add(x);
    } else {
     inDLL.remove((Character) x);
     repeatyn[x] = true;
    }
   }
   if (inDLL.size() != 0) {
    System.out.print("The first non-repeating character so far is:  ");
    System.out.println(inDLL.get(0));
   }
  }
 }
}

Пример вывода:

 Строка: Godisgood
Чтение: г
Первый неповторяющийся символ: g
Чтение: о
Первый неповторяющийся символ: g
Чтение: d
Первый неповторяющийся символ: g
Чтение: я
Первый неповторяющийся символ: g
Чтение: с
Первый неповторяющийся символ: g
Чтение: г
Первый неповторяющийся символ: o
Чтение: о
Первый неповторяющийся символ до сих пор: d
Чтение: о
Первый неповторяющийся символ до сих пор: d
Чтение: d
Первый неповторяющийся символ: i

Блок - схема:

«Блок-схема:

Редактор кода Java:

Улучшите этот пример решения и опубликуйте свой код через Disqus

Предыдущий: Напишите Java-программу для удаления "b" и "ac" из заданной строки.
Далее: Напишите программу на Java, чтобы найти лексикографический ранг данной строки.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code