( setq list1 '( a ( b ( c d ) e ) f ( g h ) i ) )
( print ( length ( list1 ) ) )
这里的输出是5,但我希望输出是9。如何分解列表并找到整个长度?
最佳答案
您似乎不想计算长度,而是计算给定列表的原子数(树中的叶子)。 为此,您需要定义一个函数来检查参数是原子还是列表。在第一种情况下,它将返回 1(一个原子中的原子数)。在第二种情况下,它将返回列表中每个单独分支的原子总和,使用相同的函数计算。 这应该足以让您入门。
关于list - 如何找到多级列表的长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40915190/