Форум программистов, компьютерный форум, киберфорум
alhaos
Войти
Регистрация
Восстановить пароль
Оценить эту запись

Задача: Дан массив строк, сгенерировать все возможные уникальные варианты выбора элементов данного массива

Запись от alhaos размещена 24.05.2021 в 08:31

PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
. {
    <#
    .SYNOPSIS
        Дан массив строк, сгенерировать все возможные уникальные варианты выбора элементов данного массива
    #>
 
    param(
        [string[]]$array
    )
 
    ([Linq.Enumerable]::Distinct(
            [string[]]($array.ForEach{
                    $l0 = $_
                    $array.ForEach{
                        $l1 = $_
                        $array.ForEach{
                            $l2 = $_
                            $array.ForEach{
                                "[{0}]" -f (
                                    [Linq.Enumerable]::Distinct(
                                        [Linq.Enumerable]::OrderBy(
                                            [string[]]@($l0, $l1, $l2, $_), [Func[string, string]] { $args[0] }
                                        )
                                    ) -join ", "
                                )
                            }
                        }
                    }
                }
            ) 
        )
    )
} @("a", "a", "b", "c", "d")
Код:
[a]
[a, b]
[a, c]
[a, d]
[a, b, c]
[a, b, d]
[a, c, d]
[a, b, c, d]
[b]
[b, c]
[b, d]
[b, c, d]
[c]
[c, d]
[d]
Размещено в Без категории
Показов 503 Комментарии 0
Всего комментариев 0
Комментарии
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.