明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1724|回复: 4

如何优化用lisp写的表处理函数,内有详细说明

[复制链接]
发表于 2008-8-21 17:58 | 显示全部楼层 |阅读模式

有一个题,转到lisp中是这样:

    2个嵌套表,一个为lst1,一个为lst0,其中lst1像这样:

        '((0 1 0 1 0) (1 0 1 01) (1 1 1 0 0) (0 1 0 0 1)),(已给出,无规律)

        而lst0像这样:

        '((1 0 1 0 1) (1 1 0 1 1) (0 0 0 0 1) (1 1 1 1 0)).(已给出,无规律)

        lst1和lst0等长,其子表中元素等长且只含有0和1。字表长度可到100,

        lst1和lst0长度也可到100,但是lst1和lst0的长度可以与其中的子表长度不同。

    现在要求把lst1表经过最短的步骤转换成lst0,可以是这样的2种步骤:

        1.交换lst1中2个子表的位置;

        2.把0或者1变成1或者0,像翻盖子一样,呵呵。

  基本上是这样的意思,不清楚可以发问。

  已经算了一点,基本思路是对每一个lst1中的元素(子表)找到lst0中与他差异最小的元素(子表),

  返回2者的索引序号进行交换。问题是:具体操作牵扯到lst1中某个子表对应n个lst0中差异最小都一样的的子表要对这些n个子表进行lst1的反馈,再进行比较操作。这样很不妙,期待好心人帮忙给出一个启示,最好加一 点代码上来,不胜感激!

有意可发到邮箱探讨,anda@126.com">lolanda@126.com

点评

(setq lst1 lst0)  发表于 2013-7-21 17:08
发表于 2008-8-21 18:14 | 显示全部楼层
听着有些糊涂啊,呵呵
 楼主| 发表于 2008-8-21 21:06 | 显示全部楼层

算起来更糊涂...想了两个晚上了.

不要看我的想法,欢迎贴上来自己的办法。

发表于 2008-8-21 22:26 | 显示全部楼层
没明白是什么意思
发表于 2008-8-21 23:15 | 显示全部楼层

既然已有st0干吗要从st1换呢?

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-21 05:27 , Processed in 0.248850 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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