明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1466|回复: 6

[已解答] 将表按照一定的规则划分

[复制链接]
发表于 2013-5-31 15:12:08 | 显示全部楼层 |阅读模式
本帖最后由 Gu_xl 于 2013-5-31 21:34 编辑

举例说明一下例如有个表a("a" "1""b" "3""a" "2""c" "4""a" "15""5" "6""7" "34""a" "9""11" "bb""d" "n""m" "mm")划分为表
("a" "1""b" "3")("a" "2""c" "4")("a" "15""5" "6""7" "34")("a" "9""11" "bb""d" "n""m" "mm")
有什么好的思路吗?当然不一定是遇到a还有可能是遇到其他相同的元素然后分段!
我的思路比较混乱,希望得到您的帮助!谢谢
发表于 2013-5-31 17:03:10 | 显示全部楼层
  1. (defun f (l a / c)
  2.   (while l
  3.     (if        (= a (car l))
  4.       (progn
  5.         (if b
  6.           (setq        c (cons (reverse b) c)
  7.                 b nil
  8.           )
  9.         )
  10.         (setq b        (cons (car l) b)
  11.               l        (cdr l)
  12.         )
  13.         (while (and l
  14.                     (/= a (car l))
  15.                )
  16.           (setq        b (cons (car l) b)
  17.                 l (cdr l)
  18.           )
  19.         )
  20.         (setq c        (cons (reverse b) c)
  21.               b        nil
  22.         )
  23.       )
  24.       (progn
  25.         (setq b        (cons (car l) b)
  26.               l        (cdr l)
  27.         )
  28.       )
  29.     )
  30.   )
  31.   (if b
  32.     (setq c (cons (reverse b) c)
  33.           b nil
  34.     )
  35.   )

  36.   (reverse c)
  37. )
发表于 2013-5-31 17:40:56 | 显示全部楼层
G版真是神速,不过运行后,分离出的第一个子表不是楼主要求的("a" "1""b" "3"),而是("1""b" "3")
 楼主| 发表于 2013-5-31 21:17:20 | 显示全部楼层
那也要谢谢G版的帮助!这样我也有思路了!真的很谢谢
发表于 2013-5-31 21:21:10 | 显示全部楼层
zyhandw 发表于 2013-5-31 17:40
G版真是神速,不过运行后,分离出的第一个子表不是楼主要求的("a" "1""b" "3"),而是("1""b" "3")

怎么不对?
(f '("a" "1""b" "3""a" "2""c" "4""a" "15""5" "6""7" "34""a" "9""11" "bb""d" "n""m" "mm") "a")
==》
(("a" "1" "b" "3") ("a" "2" "c" "4") ("a" "15" "5" "6" "7" "34") ("a" "9" "11" "bb" "d" "n" "m" "mm"))
发表于 2013-6-1 08:58:38 | 显示全部楼层
感谢G版分享程序
测试O.K.
发表于 2013-10-23 22:47:19 | 显示全部楼层
G版的程式测试没问题,支持G版。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-26 05:14 , Processed in 1.013144 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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