LISP语言的list如何实现插入操作???
LISP语言的list如何实现插入操作???头尾的插入似乎可以实现,但是除了头尾,在中间任意位置,想要插入元素该如何实现。(12345)变为(123945)怎么实现?看了...
LISP语言的list如何实现插入操作???头尾的插入似乎可以实现,但是除了头尾,在中间任意位置,想要插入元素该如何实现。
(1 2 3 4 5)
变为(1 2 3 9 4 5)
怎么实现?
看了半天对list的操作,有删除操作,就是没插入操作,底层是链表,插入操作应该很容易实现啊。 展开
(1 2 3 4 5)
变为(1 2 3 9 4 5)
怎么实现?
看了半天对list的操作,有删除操作,就是没插入操作,底层是链表,插入操作应该很容易实现啊。 展开
展开全部
(defun c:chengxu (/ yuanshi aaa bbb test jieguo)
(setq yuanshi '(1 2 3 4 5));原始表
(setq aaa yuanshi);复制原始表,循环处理会改变,所以复制数据
(setq bbb yuanshi);复制原始表,循环处理会改变,所以复制数据
;前段处理
(repeat 3 ;循环
(setq test (cons (car aaa) test));制作一个储存逆向数据的表
(setq aaa (cdr aaa))
)
(setq test (reverse test));逆转表
;后端处理
(repeat 3 ;循环
(setq bbb (cdr bbb))
)
;合并
(setq jieguo (append test '(9) bbb))
;输出结果
(princ jieguo)
(princ)
)
核心就是append合并几个表而已
(setq yuanshi '(1 2 3 4 5));原始表
(setq aaa yuanshi);复制原始表,循环处理会改变,所以复制数据
(setq bbb yuanshi);复制原始表,循环处理会改变,所以复制数据
;前段处理
(repeat 3 ;循环
(setq test (cons (car aaa) test));制作一个储存逆向数据的表
(setq aaa (cdr aaa))
)
(setq test (reverse test));逆转表
;后端处理
(repeat 3 ;循环
(setq bbb (cdr bbb))
)
;合并
(setq jieguo (append test '(9) bbb))
;输出结果
(princ jieguo)
(princ)
)
核心就是append合并几个表而已
2016-06-29
展开全部
应该是指autolisp里面的函数吧。实体操作函数太多太多了,一般都是用啥查啥。你可以下载一个汉化后的函数大全:
追问
你给我说用啥啊
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询