给定一个大小写相同的字母字符串列表(az XOR AZ),其中每个字符串前面都带有0个或多个空格()字符,输出相同的列表,但字符串在每个缩进级别进行排序。出于排序目的,不同父项下的压痕深度算作不同的列表。
例
如果您输入的是:
bdellium
fox
hound
alien
aisle
wasabi
elf
alien
horseradish
xeno
irk
wren
tsunami
djinn
zebra
您的输出应为
aisle
horseradish
xeno
wasabi
alien
elf
bdellium
alien
fox
hound
djinn
zebra
irk
tsunami
wren
如果愿意,可以将其视为目录列表,并且需要对每个目录中的名称进行排序。
细节
- 一个项目可以缩进任意数量的空格。如果缩进的空格与上一项的空格相同,则它属于与上一项相同的排序层次结构。如果缩进更多空格,则这是新的子层次结构的开始。
- 如果缩进的行比上一行的行少,它会以相同的#或更少的空格链接到其上方最近的子组(例如上例中的辣根,它链接到其上方的wasabi组),因为芥末是它上面的第一个没有比辣根更多的空间)
- 您必须在输出中保留每个输入项目的缩进级别
- 禁止在输出中使用制表符
- 输入的第一行将永远不会缩进
- 您的程序必须至少处理全部大写和全部小写的字符串之一;它不必同时处理两者。
计分
这是一个代码高尔夫球,因此使用最少字节的答案将获胜。
['a','..b', '.c', '..d']
,则输出应该是什么?['a','..b', '.c', '..d']
还是['a','.c','..b', '..d']
其他东西?('.'
为了视觉清晰,我使用的不是空间)。