明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: liujing

如何交换一个表中任意两项的位置

  [复制链接]
 楼主| 发表于 2002-8-23 14:26 | 显示全部楼层

问题的原始条件是这样的

问题的原始条件是这样的:
有一表,形如:(("a" 2) ("b" 4) ("c" 3) ("d" 1))
我想要对它按每项中的数字进行排序。
即返回:(("d" 1) ("a" 2) ("c" 3) ("b" 4))
请问有什么好的方法?
发表于 2002-8-23 14:47 | 显示全部楼层

完成这个要求,是VLISP的标准功能...

(vl-sort '(("a" 2) ("b" 4) ("c" 3) ("d" 1))
          (function (lambda (e1 e2) (< (cadr e1) (cadr e2))))
)
 楼主| 发表于 2002-8-23 14:53 | 显示全部楼层

十分感谢!原来竟如此简单。

十分感谢!原来竟如此简单。
都怪我学的不精,多走了这么多的弯路。
再次感谢您。
发表于 2002-8-24 15:36 | 显示全部楼层

我的建议...

本帖最后由 陈伯雄 于 2002-8-24 15:36:38 编辑

不要“自学”,在目前条件下,这是最不好的方法。
上策:找一个确有水平的教师(实在不多)讲课的培训班上课
中策:买一本确有技术的书看,例如《Visual LISP程序设计——技巧与范例》
下策:自学,到网上问,反复试验...
 楼主| 发表于 2002-8-23 15:29 | 显示全部楼层

谢谢您的建议!可是在我这里,只有我是教师。

发表于 2005-4-29 16:30 | 显示全部楼层
那就只能采用中策了,哈哈
发表于 2005-4-29 19:54 | 显示全部楼层
我没有老师,靠看帮助,看书,实践


其实,很多功能,只要按照帮助里面的例子做一次,就基本学到了。入门的过程的确是相对艰苦的,一旦掌握了基本的用法,后面的学习积累就是看有没有时间了,有时间就多学一些,多写几个程序,没时间就陪陪老婆
发表于 2005-4-30 08:31 | 显示全部楼层
看来我用的是下策了...我还没买过一本关于LISP的书,


楼上的,看来你的时间是老婆定的啊,要陪老婆就没时间了...哈哈
发表于 2005-4-30 09:12 | 显示全部楼层
meflying发表于2005-4-30 8:31:00看来我用的是下策了...我还没买过一本关于LISP的书, 楼上的,看来你的时间是老婆定的啊,要陪老婆就没时间了...哈哈
飞哥下策都能有这么高的水平,那如果上策的话更不得了了。
发表于 2005-4-30 09:32 | 显示全部楼层
我总结出一条规律



用上策的,很容易学会,但是水平不容易再提高


用下策的,学的过程很艰苦,但是日后可以达到很高的水平.因为,经历过痛苦,才知道什么是甜,经历过被那些枯燥的函数的蹂躏和折磨,日后才能将她们玩弄于股掌之上.才能深切体会她们的每一寸肌肤的质感....


由此:


明经编程定理1: 用越苯的方法学,用越枯燥耗时的方法学,基础越踏实.日后提升的潜力越大.


推论1:对知识的掌握,和你投入的时间成正比,很多东西不是问别人就可以学到的.


推论2:你入门时候越轻松,基础越是不牢固.


推论3:面对一个问题,自己找资料,自己通过实践掌握比问别人得来的更有收获.


推论4:请大家不要为一点自己稍微试试就可以解决的问题来烦飞版,飞版也要陪老婆的,你们又不是他老婆.


推论5:要做飞版的老婆,首先要问他问题,无论多显而易见的问题都可,因为只要他没时间,就没时间去找老婆.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-12 00:17 , Processed in 0.160258 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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