Я написал программу, которая извлекает все возможные подстроки (смежные подлодки) данной строки:Используя метод, аналогичный подстроки в списке чисел
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Empty
{
class Program
{
static void Main(string[] args)
{
string str = Console.ReadLine();
for (int i = 1; i <= str.Length; i++)
{
for (int j = 0; j <= (str.Length - i); j++)
{
string subStr = str.Substring(j, i);
Console.WriteLine(subStr);
}
}
Console.ReadLine();
}
}
}
Так что, когда я вхожу abc
, она возвращает:
a
b
c
ab
bc
abc
Теперь я хотел бы использовать эту идею, чтобы применить его к списку целых чисел, так что она возвращает все возможные конкатенации элементов этого списка чисел.
Например, если я ввожу [2 11 8]
, я хотел бы его вернуть:
2
11
8
211
118
2118
Есть ли способ, подобный Substring
, что я могу использовать в списке чисел, чтобы достичь своей цели? Другими словами, могу ли я повторно использовать и модифицировать мою небольшую программу, которая работает с строкой, поэтому она также работает с целым числом?
Не то, чтобы я знал. Я просто '.ToString()' lot и использовать тот же код, который вы сделали для строк. – itsme86
Если ваша строковая логика вместо этого работала с вводом в виде символьного массива, вы могли бы легко адаптировать ее для любого типа массива. –
Если вы берете '' abs "' и вместо этого смотрите на него как '[" a "," b "," c "]', тогда вам просто нужно сделать '[2, 11, 8]. Выбрать (x => x.ToString())' и обработать то же самое, но обязательно рассмотреть строки длины> 1. – crashmstr