Сравните 2 строки с их появлением и сгруппируйте их по размеру в angularjs - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть 2 строковых массива str1 и str2, указанных ниже. str2 - это все возможные комбинации str1. Выходные данные, которые я ищу, это, если я задаю входные данные в виде числа 'n', общая длина возможного результата должна быть размером 'n' со всем вхождением каждого элемента символа str2.

str1 = [a,a,b,a];
str2 = [aaba, aab, aaa, aa, aba, ab, aa, a, aba, ab, aa,a, ba, b, a];

Здесь всего 3 а и 1 б в стр1. поэтому вывод должен содержать полную группу отдельных символов.

Вывод, который я ищу:

i/p is 1 o/p is none
i/p is 2 o/p is none
i/p is 3 o/p is aaa
i/p is 4 o/p is aaba
i/p is 5 o/p is none.

Мой код:

$scope.input = [1,2,3,4];
$scope.str1 = [a,a,b,a];
$scope.str2 = [aaba, aab, aaa, aa, aba, ab, aa, a, aba, ab, aa,a, ba, b, a];
$scope.output = [];

for(var i =0; i< $scope.input.length;i++){
  $scope.lengths = $scope.str2.map(function (word) {
       if (word.length == $scope.input[i]) {
             return word;                        
         }
       });
   $scope.output = $scope.output.push($scope.lengths);
}

Я получаю вывод как

i/p is 1 o/p is a, a, b, c
i/p is 2 o/p is aa, ab, aa, ab, aa, ba
i/p is 3 o/p is aab, aaa, aba, aba
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...