本帖最后由 狂刀lxx 于 2011-11-19 17:44 编辑
;;如果....,提个改进思路,没有具体验证结果是否正确,如果不对大家自己可以调整一下。
谁帮测试一下?
加了一个代码 (setq i (1+ i)) 这回该对了
;; by 狂刀lxx 2011.11
- ;; by 狂刀lxx 2011.11
- (defun xl-nr (i lst / n)
- (setq i (1+ i))
- (defun xxx (i lst / lst2)
- (repeat (/ i 4)
- (setq lst2(cons(cadddr lst)(cons(caddr lst)(cons(cadr lst)(cons (car lst) lst2))))
- lst (cddddr lst))
- )
- (repeat (rem i 4)
- (setq lst2(cons (car lst) lst2)
- lst (cdr lst))
- )
- (append (reverse lst2)(cdr lst))
- )
- ;;; (if (equal (vl-position (nth i lst) lst) i);;未完待续
- ;;; nil;;未完待续
- ;;; (progn;;未完待续
- (setq n (length lst))
- (if (< i (* n 0.5))
- (xxx i lst)
- (reverse (xxx (- n i) (reverse lst)))
- )
- ;;; );;未完待续
- ;;; );;未完待续
- )
|