我有一个数组:
{ "abc" "def" "cba" "fed" "junk" }
我想检查数组中的每个项目是否具有其反转版本作为同一数组中的成员。
在 Python 中,我将其表示为:
>>> array = ["abc", "def", "cba", "fed", "junk"]
>>> [item for item in array if item[::-1] in array] # [::-1] reverses a string
['abc', 'def', 'cba', 'fed']
甚至:
>>> list(filter(lambda x: x[::-1] in array, array))
['abc', 'def', 'cba', 'fed']
我试过了:
IN: scratchpad dup [ dup reverse swap member? ] filter
--- Data stack:
{ "abc" "def" "cba" "fed" "junk" }
{ }
不,每个项目的报价都失败了。
我确信有一个明显的答案,或者一个组合器和引用可以有效地做到这一点。它是什么?