找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 5883|回复: 34

[求助] (问题解决,谢谢各位大师的帮助!)

[复制链接]

已领礼包: 2476个

财富等级: 金玉满堂

发表于 2014-5-20 08:08:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
本帖最后由 q3_2006 于 2014-5-23 15:38 编辑

'((6 7) (4 "A") (8 "B") (1 2) (3 4) (6 5) (2 3) ("A" 9) ("B" 10) (7 8))
->
(((6 7) (7 8) (8 "B") ("B" 10)) ((1 2) (2 3) (3 4) (4 "A") ("A" 9)) ((6 5)))

院长出的题..没解出来...绕个半死......求助大师们....{:soso_e109:}


表达能力不行........现在问题......21楼两段代码怎么合并成1段.....就酱.....{:soso_e110:}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 10393个

财富等级: 富甲天下

发表于 2014-5-20 08:23:22 | 显示全部楼层
  1. (defun c:tt ()
  2. (setq lst '((6 7) (4 "A") (8 "B") (1 2) (3 4) (6 5) (2 3) ("A" 9) ("B" 10) (7 8)))
  3. (setq tmp1 (list) tmp2 (list))
  4. (foreach x lst
  5. (setq a (car x) b (cadr x))
  6. (if (or (= a "B") (= a 'B) (= b "B") (= b 'B) (and (>= a 6) (>= b 6)))
  7.   (setq tmp1 (cons x tmp1))
  8.   (setq tmp2 (cons x tmp2))
  9. )
  10. )
  11. (list (reverse tmp1) (reverse tmp2))
  12. )

点评

这样不行的...Z版....  详情 回复 发表于 2014-5-20 17:35
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 859个

财富等级: 财运亨通

发表于 2014-5-20 08:37:15 | 显示全部楼层
本帖最后由 csharp 于 2014-5-20 08:57 编辑

  1. (defun ff (lst / nl n)
  2.   (setq        nl  (list (list (car lst)))
  3.         lst (cdr lst)
  4.   )
  5.   (while lst
  6.     (while (setq n (assoc (cadr (caar nl)) lst))
  7.       (setq nl (cons (cons n (car nl)) (cdr nl)))
  8.       (setq lst (vl-remove n lst))
  9.     )
  10.     (setq nl (cons (list (car lst)) nl))
  11.     (setq lst (cdr lst))
  12.   )
  13.   (mapcar 'reverse nl)
  14. )

点评

我就是这里写不清楚....car 等于cadr 的会知道怎么加入子表...cadr 等于car 的怎么加入子表绕不明白....大师这里就将cadr 等于car 的自动分段了...这样不行的....表头不一定是第一项.... (((6 5)) ((1 2) (2 3) (  详情 回复 发表于 2014-5-20 17:43
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2014-5-20 17:35:08 | 显示全部楼层

这样不行的...Z版....{:soso_e127:}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2014-5-20 17:43:03 | 显示全部楼层

我就是这里写不清楚....car 等于cadr 的会知道怎么加入子表...cadr 等于car 的怎么加入子表绕不明白....大师这里就将cadr 等于car 的自动分段了...这样不行的....表头不一定是第一项....

(((6 5)) ((1 2) (2 3) (3 4)) ((4 "A") ("A" 9)) ((6 7) (7 8) (8 "B") ("B" 10)))这样不对...应该

(((6 7) (7 8) (8 "B") ("B" 10)) ((1 2) (2 3) (3 4) (4 "A") ("A" 9)) ((6 5)))


(4 "A")不是第一项...要用"A"找("A" 9)...也要同时用4找(3 4) ...这里我不会写{:soso_e110:}要不要再指点下.....谢谢了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2014-5-20 18:06:39 | 显示全部楼层
  1. (setq lst '((6 7) (4 "A") (8 "B") (1 2) (3 4) (6 5) (2 3) ("A" 9) ("B" 10) (7 8)))
  2. (defun tt(lst)
  3.   (setq b (car lst)
  4.         a (list b)
  5.         d nil
  6.         lst(cdr lst)
  7.   )
  8.   (while lst
  9.     (if (setq c (assoc (cadr b) lst))
  10.         (setq a (cons c a)
  11.               lst (vl-remove c lst)
  12.               b c
  13.         )
  14.       (setq d (cons (reverse a) d)
  15.             b (car lst)
  16.             a (list b)
  17.             lst (cdr lst)
  18.       )
  19.     )
  20.   )
  21.   (reverse d)
  22. )

_$ (tt lst)
(((6 7) (7 8) (8 "B") ("B" 10)) ((4 "A") ("A" 9)) ((1 2) (2 3) (3 4)))

点评

长老...也不对哟...没这么简单...  详情 回复 发表于 2014-5-20 18:09
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2014-5-20 18:09:46 | 显示全部楼层
ll_j 发表于 2014-5-20 18:06
_$ (tt lst)
(((6 7) (7 8) (8 "B") ("B" 10)) ((4 "A") ("A" 9)) ((1 2) (2 3) (3 4)))

长老...也不对哟...没这么简单...{:soso_e110:}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-5-20 18:45:03 来自手机 | 显示全部楼层
还有一个就是sort了,怎么排看你自己

点评

不是排序的问题呀...大师也研究下呗...这种写法分段不对呀....  详情 回复 发表于 2014-5-20 18:49
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2014-5-20 18:49:34 | 显示全部楼层
st788796 发表于 2014-5-20 18:45
还有一个就是sort了,怎么排看你自己

不是排序的问题呀...大师也研究下呗...这种写法分段不对呀....{:soso_e127:}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2014-5-20 18:50:19 | 显示全部楼层
不想二次处理的说.....{:soso_e110:}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-5-20 19:33:30 来自手机 | 显示全部楼层
q3_2006 发表于 2014-5-20 18:50
不想二次处理的说.....

有什么内涵?猜规律没法写
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-5-20 19:34:26 来自手机 | 显示全部楼层
q3_2006 发表于 2014-5-20 18:50
不想二次处理的说.....

有什么内涵?猜规律没法写

点评

规律很好理解呀...就是首尾相接呀....问题是写起来好难的...  详情 回复 发表于 2014-5-20 19:37
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2476个

财富等级: 金玉满堂

 楼主| 发表于 2014-5-20 19:37:53 | 显示全部楼层
st788796 发表于 2014-5-20 19:34
有什么内涵?猜规律没法写

规律很好理解呀...就是首尾相接呀....问题是写起来好难的...
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 10393个

财富等级: 富甲天下

发表于 2014-5-20 20:44:21 | 显示全部楼层
本帖最后由 zxq0220 于 2014-5-20 20:46 编辑
  1. (defun c:tt ()
  2. (setq lst '((6 7) (4 "A") (8 "B") (1 2) (3 4) (6 5) (2 3) ("A" 9) ("B" 10) (7 8)))
  3. (setq tmp2 (list))
  4. (while (> (length lst) 0)
  5. (setq p1 (car lst) tmp1 (list p1) lst (cdr lst))
  6. (while (setq p2 (assoc (cadr p1) lst))
  7. (setq tmp1 (cons p2 tmp1) p1 p2)
  8. (setq lst (vl-remove p2 lst))
  9. )
  10. (setq tmp2 (cons (reverse tmp1) tmp2))
  11. (setq lst (vl-sort lst
  12. '(lambda (a b) (< (if (= (type (car a)) 'STR) (ascii(car a)) (car a))
  13. (if (= (car b) 'STR) (ascii(car b)) (car b))))))
  14. )
  15. (reverse tmp2)
  16. )

点评

不能出现排序的....  详情 回复 发表于 2014-5-20 21:34
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2014-5-20 20:50:56 | 显示全部楼层
看了下发现我的也错了! {:soso_e120:}

跟大家结果一样。
  1. ;(setq lst1 '((6 7)(4 "A")(8 "B")(1 2)(3 4)(6 5)(2 3)("A" 9)("B" 10)(7 8)))
  2. ;(t22 lst1)
  3. (defun t22 (lst / l3)
  4.     (defun t11 (lst / a b l1 l2 )
  5.         (setq a (car lst) b (cadr a) lst (vl-remove a lst) l2 (cons a l2))
  6.         (while
  7.             (setq l1 (vl-member-if '(lambda(x)(= b (car x))) lst))
  8.             (setq a (car l1) b (cadr a) lst (vl-remove a lst) l2 (cons a l2))
  9.         )
  10.         (setq l3 (cons l2 l3))
  11.         (if lst (t11 lst))
  12.     )
  13.     (t11 lst)
  14.     (setq l3 (mapcar 'reverse l3))
  15.     ;(list (last l3) (append(cadr l3)(caddr l3)) (car l3))
  16. )

点评

下线了...看来只能后面二次处理下....总之不能出现排序什么的... (defun tx (l / a b i j) (setq i -1) (while (setq a (nth (setq i (1+ i)) l)) (setq j i) (while (setq b (nth (setq j (1+ j)  详情 回复 发表于 2014-5-20 21:33
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-14 06:20 , Processed in 0.348568 second(s), 66 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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