找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1821|回复: 19

[研讨] 删除X值一样,Y值除最大值外的表

[复制链接]

已领礼包: 1742个

财富等级: 堆金积玉

发表于 2014-3-15 15:48:32 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 炫翔 于 2014-3-15 15:50 编辑

初级版本 表中只有一种重复的X值

(SETQ LST '((1 9)(5.5 1)(2 8)(5.5 2)(5.5 4)(5.5 3)))

返回--->((1 9)(2 8)(5.5 4))


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

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-15 16:09:34 来自手机 | 显示全部楼层
先排序      

点评

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

使用道具 举报

已领礼包: 1742个

财富等级: 堆金积玉

 楼主| 发表于 2014-3-15 16:10:58 | 显示全部楼层

表中5.5只是个例子,也许是1.1  0.6等数据

点评

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

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

发表于 2014-3-15 16:34:13 来自手机 | 显示全部楼层
炫翔 发表于 2014-3-15 16:10
表中5.5只是个例子,也许是1.1  0.6等数据

2楼说得对,先排序,后面就好干了

点评

排序后 ,判断第一个与第二个 X相同 相同就归表 ,不同就放弃 依次类推?  详情 回复 发表于 2014-3-15 16:36
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1742个

财富等级: 堆金积玉

 楼主| 发表于 2014-3-15 16:36:59 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2014-3-15 16:34
2楼说得对,先排序,后面就好干了

排序后 ,判断第一个与第二个 X相同 相同就归表 ,不同就放弃 依次类推?

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-15 16:39:52 来自手机 | 显示全部楼层
炫翔 发表于 2014-3-15 16:36
排序后 ,判断第一个与第二个 X相同 相同就归表 ,不同就放弃 依次类推?

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

使用道具 举报

已领礼包: 1742个

财富等级: 堆金积玉

 楼主| 发表于 2014-3-15 16:55:32 | 显示全部楼层
(DEFUN C:XX( / e1 e2 lst lst1 x)
(SETQ LST '((1 9)(5.5 1)(2 8)(5.5 2)(5.5 4)(5.5 3)))
(SETQ LST(vl-sort lst (function (lambda (e1 e2) (> (CAR e1) (CAR e2))))))
(SETQ LST(XD::List:GroupByIndex LST 0))
(foreach X LST
(IF(> (length X) 3)
  (SETQ LST1 (CONS(LIST(CAR X) (CAR(vl-sort (CDR X) (function (lambda (e1 e2) (> e1 e1))))))LST1))
  (SETQ LST1 (CONS X LST1))
  )
)
LST1
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1742个

财富等级: 堆金积玉

 楼主| 发表于 2014-3-15 16:56:25 | 显示全部楼层
根据大家的思路 随手写了下,
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-15 17:41:34 | 显示全部楼层
炫翔 发表于 2014-3-15 16:56
根据大家的思路 随手写了下,

  1. (defun tt (lst /)
  2.   (setq        lst (mapcar '(lambda (x)
  3.                        (list (float (car x)) x)
  4.                      )
  5.                     lst
  6.             )
  7.         lst (XD::List:GroupByIndex lst 1e-5)
  8.         lst (mapcar '(lambda (x)
  9.                        (vl-sort        x
  10.                                 '(lambda (x1 x2)
  11.                                    (> (cadr x1) (cadr x2))
  12.                                  )
  13.                        )
  14.                      )
  15.                     (mapcar 'cdr lst)
  16.             )
  17.         lst (mapcar 'car lst)
  18.   )
  19. )

点评

分组前需要先转实数, 有待升级  详情 回复 发表于 2014-3-15 17:52

评分

参与人数 1D豆 +5 收起 理由
炫翔 + 5 很给力!经验;技术要点;资料分享奖!

查看全部评分

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

使用道具 举报

已领礼包: 1742个

财富等级: 堆金积玉

 楼主| 发表于 2014-3-15 17:52:38 | 显示全部楼层

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-3-15 20:48:37 来自手机 | 显示全部楼层
炫翔 发表于 2014-3-15 17:52
分组前需要先转实数, 有待升级

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

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

发表于 2014-3-19 13:37:01 | 显示全部楼层
本帖最后由 /db_自贡黄明儒_ 于 2014-3-19 15:24 编辑

  1. ;;(SETQ LST '((1 9) (5.5 1) (2 8) (5.5 2) (5.5 4) (5.5 3)))
  2. ;;(w1 lst)=>((1 9) (2 8) (5.5 4))
  3. (defun w2 (LST /  CAR1  L2)
  4.   (foreach x  (HH:ssPts:Sort LST "XY" 0)
  5.     (cond ((not (member (car x) car1))
  6.      (setq car1 (cons (car x) car1))
  7.      (setq L2 (cons x L2))
  8.     )
  9.     )
  10.   )
  11.   L2
  12. )
;;(SETQ LST '((1 9) (5.5 1) (2 8) (5.5 2) (5.5 4) (5.5 3)))
;;(w1 lst)=>((1 9) (2 8) (5.5 4))
(defun w1 (LST / AA CAR1 L1 L2)  
  (setq L1 (HH:ssPts:Sort LST "XY" 0));http://bbs.xdcad.net/thread-670556-1-1.html
  (while (setq aa (car L1))   
    (setq L1 (cdr L1))
    (if        (not (member (car aa) car1))
      (progn
        (setq car1 (cons (car aa) car1))
        (setq L2 (cons aa L2))
      )
    )
  )
  L2
)

点评

HH:ssPts:Sort 这个函数呢?  详情 回复 发表于 2014-3-19 15:02

评分

参与人数 1D豆 +5 收起 理由
炫翔 + 5 技术引导讨论和指点奖!

查看全部评分

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

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2014-3-19 15:02:06 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2014-3-19 13:37
;;(SETQ LST '((1 9) (5.5 1) (2 8) (5.5 2) (5.5 4) (5.5 3)))
;;(w1 lst)=>((1 9) (2 8) (5.5 4))
(def ...

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

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

发表于 2014-3-19 15:35:04 | 显示全部楼层
XDSoft 发表于 2014-3-19 15:02
HH:ssPts:Sort 这个函数呢?

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-22 22:43 , Processed in 0.508548 second(s), 66 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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