Напечатать все слова предложения, которые являются частью других слов предложения - C#
Формулировка задачи:
Доброго времени суток! Суть вопроса в следующем: дан массив строк, в нём нужно найти слова, которые являются подсловами других слов. Пожалуйста, скажите как это можно алгоритмизировать? Второй день думаю, но что-то никак не доходит(
Решение задачи: «Напечатать все слова предложения, которые являются частью других слов предложения»
textual
Листинг программы
- internal class FindedWordData
- {
- public string Word { get; set; }
- public string InWord { get; set; }
- }
- internal static class WordHelper
- {
- public static List<FindedWordData> InWords(this IEnumerable<string> wrds)
- {
- var result = new List<FindedWordData>();
- var words = wrds.ToList();
- for (int i = 0; i < words.Count; i++)
- {
- var processingWord = words[i];
- for (int j = 0; j < words.Count; j++)
- {
- if(i == j)
- continue;
- var word = words[j];
- if (word.IndexOf(processingWord, StringComparison.CurrentCultureIgnoreCase) > -1)
- {
- result.Add(new FindedWordData {Word = processingWord,InWord = word});
- }
- }
- }
- return result;
- class Program
- {
- static void Main(string[] args)
- {
- var words = new[] {"Калина", "Алина", "на", "а", "Порог", "рог"};
- var result = words.InWords();
- Console.ReadKey();
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д