【蓝桥杯】扑克牌移动
2016-03-19 12:23
246 查看
import java.util.Arrays; import java.util.List; import java.util.Vector; /** * 下面代码模拟了一套扑克牌(初始排序A~K,共13张)的操作过程。 操作过程是: 手里拿着这套扑克牌,从前面拿一张放在后面,再从前面拿一张放桌子上,再从前面拿一张放在后面,.... 如此循环操作,直到剩下最后一张牌也放在桌子上。 下面代码的目的就是为了求出最后桌上的牌的顺序。 初始的排列如果是A,2,3...K,则最后桌上的顺序为: [2, 4, 6, 8, 10, Q, A, 5, 9, K, 7, 3, J] import java.util.*; public class A23 { public static List moveCard(List src) { if(src==null) return null; List dst = new Vector(); for(;;) { if(__________________) break; // 填空 src.add(src.remove(0)); dst.add(__________________); // 填空 } return dst; } public static void main(String[] args) { List a = new Vector(); a.addAll(Arrays.asList("A","2","3","4","5","6","7","8","9","10","J","Q","K")); System.out.println(moveCard(a)); } } 请分析代码逻辑,并推测划线处的代码。 答案写在 “解答.txt” 文件中 注意:只写划线处应该填的内容,划线前后的内容不要抄写。 * @author xiaoping * */ public class Main6 { public static List moveCard(List src) { if(src==null) return null; List dst = new Vector(); for(;;) { if(src.size()==0) break; // 填空 src.add(src.remove(0));//将最上面的牌放到最底下 dst.add(src.remove(0)); // 填空 } return dst; } public static void main(String[] args) { List a = new Vector(); a.addAll(Arrays.asList("A","2","3","4","5","6","7","8","9","10","J","Q","K")); System.out.println(moveCard(a)); } }
输出:
[2, 4, 6, 8, 10, Q, A, 5, 9, K, 7, 3, J]
相关文章推荐
- qwt的安装与使用
- 数据库系统概念 - 关于这本书
- Sublime Text3 包管理器、插件安装
- Ubuntu ulimit 系统最大打开文件个数 设置
- JS和Jquery操作label标签
- JS和Jquery操作label标签
- 个人所得税计算器
- 【蓝桥杯】返回把串s中第一个出现的数字的值
- 初学者学习 - Unity中的热更新 - Lua和C#通信
- (5)POI读取Excel内容
- visual studio2013安装及测试
- Box2D射线和AABB碰撞检测
- oracle建表语句
- PAT 乙级 1011.A+B和C
- 【蓝桥杯】海盗喝酒
- 重学数据结构系列之——队列
- (4)Python读写csv文件
- c语言赋值语句
- 射线与球
- 什么是Mac地址?什么是交换机? 涉及单工,半双工,双工模式