算法题,输出是父的元素以及其所有下属

今天面试有一道算法题,有一个上级和下属的关系数组如下:

$teams = [
    '一'=>[
        '三'=>null,
        '四'=>[
            '五'=>null,
            '六'=>[
                '七'=>null,
                '八'=>null
            ],
        ]
    ],
    '二'=>[
        '九'=>[
            '十'=>[
                '十一'=>null,
                '十二'=>[
                    '十三'=>null,
                    '十四'=>null
                ],
            ],
        ],
    ]
];

题目让输出所有是是父的下属,如:三没有下属,六有七、八两个下属,让输出如下结果:

一:三,四,五,六,七,八
三:
四:五,六,七,八
五:
六:七,八
七:
八:
二:九,十,十一,十二,十三,十四
九:十,十一,十二,十三,十四
十:十一,十二,十三,十四
十一:
十二:十三,十四
十三:
十四:

看题意应该是递归无疑了,但是比如八这个元素在结果中出现多次,所以一层递归搞不定,最后结果见如下代码(代码直接用截图了,为了让大家也手敲一下,截图用的是vscode的Polacode插件):

code.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值