约瑟夫问题的java简单算法

 // 约瑟夫环问题
package com.neusoft;

import java.util.Iterator;
import java.util.Vector;

public class Josefu {
    
    private final static int NUM=3;
    private static String people[]=new String[]{"a","b","c","d","e","f","g","h"};
    
    public static void main(String[] args) {
        
        Vector v=new Vector();
        for(int i=0;i<people.length;i++)
        {
            v.add(people[i]);
        }
        Iterator ite=v.iterator();
        int i;
        Object o=null;
        while(v.size()!=1)
        {        
            for(i=0;i<NUM;i++)
            {
                if(!ite.hasNext())
                    ite=v.iterator();
                o=ite.next();                
            }    
            ite.remove();
            System.out.println(o);
        }
        while(ite.hasNext())
            System.out.println(ite.next());
    }
}

版权声明:本文为luenle原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。