кодесурса

Java String Exercises: Проверьте, являются ли две строки чередованием указанной строки

script1adsense2code
script1adsense3code

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

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

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


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

Java-код:

import java.util.*;
public class Main {
 public static void main(String args[]) {
  String str1 ="MNO";
  String str2 ="PQ";
  String str3 ="PMQNO";
  System.out.println("The given string is: " + str3);
  System.out.println("The interleaving strings are " + str1 + " and " + str2);
  System.out.println("The given string is interleaving: " + checkInterleaved(str1, str2, str3));
 }
 private static boolean checkInterleaved(String str1, String str2, String CheckInString) {
  int i = 0, j = 0, k = 0;
  if (str1.length() + str2.length() != CheckInString.length()) {
   return false;
  }
  while (k < CheckInString.length()) {
   if (i < str1.length() && str1.charAt(i) == CheckInString.charAt(k)) {
    i++;
   } else if (j < str2.length() && str2.charAt(j) == CheckInString.charAt(k)) {
    j++;
   } else {
    return false;
   }
   k++;
  }
  if (!(i == str1.length() && j == str2.length() && k == CheckInString.length())) {
   return false;
  }
  return true;
 }
}

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

 Данная строка: PMQNO
Чередующиеся строки - это MNO и PQ
Данная строка чередуется: true
Данная строка: PNQMO
Чередующиеся строки - это MNO и PQ
Данная строка чередуется: false

NB: во 2-м случае в строке чередования N идет перед M, а в исходной строке str1 = MNO (N идет после M), поэтому оно не чередуется.

Блок - схема:

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

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

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

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

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

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


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code