扑克牌排列问题解法

下面代码模拟了一套扑克牌(初始排序A~K,共13张)的操作过程。 操作过程是: 
手里拿着这套扑克牌,从前面拿一张放在后面,再从前面拿一张放桌子上,再从前面拿一张放在后面,.... 如此循环操作,直到剩下最后一张牌也放在桌子上。 下面代码的目的就是为了求出最后桌上的牌的顺序。 初始的排列如果是A,2,3...K,则最后桌上的顺序为: [2, 4, 6, 8, 10, Q, A, 5, 9, K, 7, 3, J] 

import java.util.ArrayList;
public class PokerProblem {
	static String[] poker={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
	

	public static void getSort(ArrayList<String>pokers) 
	{
		
		int count=1;
		while(pokers.size()!=0)
		{
			if(count%2==0)
			{

				if(pokers.size()>1)
				{
					System.out.print(pokers.get(0)+",");
					pokers.remove(0);
				}
				else 
				{
					System.out.print(pokers.get(0));
					pokers.remove(0);
				}
			}
			else 
			{
				pokers.add(pokers.remove(0));
			}
			count++;
		}
		
	}

	public static void main(String[] args) {
		ArrayList<String>pokers=new ArrayList<String>();
		for (String string : poker) {
			pokers.add(string);
		}
       getSort(pokers);
	}
}

猜你喜欢

转载自blog.csdn.net/wanlichangkong666/article/details/71600801
今日推荐