 - (defun delsame (l1 / l2)
- ;;表中去除重复元素(重复过的取第一次出现)by llsheng_73
- (while (setq l2 (cons (car l1) l2)
- l1 (vl-remove (car l1) (cdr l1))
- )
- )
- (reverse l2)
- )
- (defun count (alst / i rlst)
- (setq blst alst)
- (foreach a alst
- (setq i 0)
- (foreach b blst
- (if (equal a b)
- (setq i (1+ i))
- )
- )
- (setq rlst (append (list (cons a (list i))) rlst))
- )
- (delsame rlst)
- )
- ;(setq alst '((0 0 1) (0 1 0) (0 1 1) (10 1 1) (0 1 0) (10 1 1)))
- ;(count alst)
- ;-->(((10 1 1) 2) ((0 1 0) 2) ((0 1 1) 1) ((0 0 1) 1))
如果数据大,我觉得院长的应该比较快 |