早上大家!!!
我实际上是想在Common Lisp中进行练习,但我不知道如何仅使用递归进行练习。
这是问题......我有嵌套列表,我必须替换其中的一些元素。我有一个例子。这是我的清单:
list_one - > (s ((1 2 t ((e 2 **x**) (4 3 **g**) (w 5 **e**))) (y 3 4 ((5 4 **u**))) (3 d 6 ((a 6 **r**) (8 5 **o**)))))
练习的目的是替换所有标记的字符。这只是一个示例,但标记字符的位置在嵌套列表中始终相同。
我必须用另一个列表中的值替换标记的字符(second_list):
second_list - > (3 4 5 6 7 8)
在此示例中,结果列表必须为:
resul_list - > (s ((1 2 t ((e 2 **3**) (4 3 **4**) (w 5 **5**))) (y 3 4 ((5 4 **6**))) (3 d 6 ((a 6 **7**) (8 5 **8**)))))
我在互联网上阅读类似内容,但实施的解决方案太难了,我无法自己实施。我正在寻找只使用递归的东西,我最大的问题是,即使我知道要在嵌套列表的结构中替换的元素的位置,我也不明白如何达到它。
谢谢大家!!