明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 6120|回复: 19

[经验] AutoLisp中的递归使用

  [复制链接]
发表于 2013-8-11 13:39:17 | 显示全部楼层 |阅读模式
本帖最后由 ll_j 于 2013-8-11 13:40 编辑

这是个人对递归使用的看法,原创,因为太长,所以以pdf格式上传。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

评分

参与人数 7明经币 +10 金钱 +48 收起 理由
tigcat + 1 很给力!
wxssh + 1
bzhjl + 1 很给力!
286168051 + 1 很给力!
自贡黄明儒 + 1 赞一个!
Gu_xl + 3 + 18 赞一个!
langjs + 2 + 30 很给力!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2019-2-27 09:43:06 | 显示全部楼层
谢谢楼主分享,楼主是个热心人!
发表于 2024-1-28 22:43:59 | 显示全部楼层
感谢大佬的分享,学习了
发表于 2024-2-3 16:44:14 来自手机 | 显示全部楼层
谢谢楼主分享。
发表于 2013-8-11 13:44:06 来自手机 | 显示全部楼层
顶,一是要好好向楼主学习,感射共享!
发表于 2013-8-11 14:01:02 | 显示全部楼层
递归这东西,我确实是 没理解透彻。


特来学习,感谢分享。
发表于 2013-8-11 20:23:27 | 显示全部楼层
谢谢,受益匪浅
 楼主| 发表于 2013-8-12 12:42:12 | 显示全部楼层
顶一顶!!
发表于 2013-8-12 15:18:57 | 显示全部楼层
根据你的分析,你上面提到的BAtte:lst->str,是不是改成如下定义更好些呢?
(defun BAtte:lst->str (lst del)
  (if (not (cdr lst))
    (car lst)
    (strcat (car lst) del (BAtte:lst->str (cdr lst) del))
  )
)
 楼主| 发表于 2013-8-12 16:17:05 | 显示全部楼层
自贡黄明儒 发表于 2013-8-12 15:18
根据你的分析,你上面提到的BAtte:lst->str,是不是改成如下定义更好些呢?
(defun BAtte:lst->str (lst d ...

尾递归不是说一定要在书面上把递归写在最后,而是实际运算中应该在最后,你这样表达和原本的写法是相同的,但判断多了一层not,是不合算的,自由判断后两个分支,非此即彼,而且只能有一个,所以,那个写在前面是无所谓的。
顺便说一下,这个函数就是从你的帖子里面截出来的。

点评

我只是收集,误不透呀。  发表于 2013-8-12 16:26
 楼主| 发表于 2013-8-14 09:19:03 | 显示全部楼层
沉得很快,最后再顶一次。
发表于 2013-8-14 13:21:23 | 显示全部楼层
这个递归太深了,所以一般都不太关注。比如我写的〈钢板重量加法器〉,因为简单,所以顶的人要多一些
发表于 2014-2-27 22:16:49 | 显示全部楼层
难理解的知识。学习了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-12-27 13:07 , Processed in 0.156628 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表