摘要: 题目说明: 洗扑克牌的原理其实与乱数排列是相同的,都是将一组数字(例如1~N)打乱重新排列,只不过洗扑克牌多了一个花色判断的动作而已。 题目解析: 初学者通常会直接想到,随机产生1~N的随机数并将之存入阵列中,后来产生的随机数存入阵列前必须先检查阵列中是否已有重复的数字,如果有这个数就不存入,再重新产生下一个数,运气不好的话,重复的次数就会很多,程式的执行速度就很慢了,这不是一个好方法。以1~... 阅读全文
posted @ 2015-09-22 17:50 Quincy 阅读(2976) 评论(0) 推荐(0) 编辑
摘要: 题目说明:通过将中序式转换为后序式,不用处理运算子先后顺序问题,只要依序由运算式由前往后读取即可。题目解析:运算时由后序式的前方开始读取,遇到运算元先存入堆叠,如果遇到运算子,则由堆叠中取出两个运算元进行对应的运算,然后将结果存回堆叠,如果运算式读取完 毕,那么堆叠顶的值就是答案了,例如我们计算12... 阅读全文
posted @ 2015-09-22 16:31 Quincy 阅读(547) 评论(0) 推荐(0) 编辑
摘要: 题目说明:平常所使用的运算式,主要是将运算元放在运算子的两旁,例如a+b/d这样的式子,这称之为中序(Infix)表示式,对于人类来说,这样的式子很容易理 解,但由于电脑执行指令时是有顺序的,遇到中序表示式时,无法直接进行运算,而必须进一步判断运算的先后顺序,所以必须将中序表示式转换为另一种表示方 ... 阅读全文
posted @ 2015-09-22 14:29 Quincy 阅读(1143) 评论(0) 推荐(0) 编辑