⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 permutation.java

📁 fortran并行计算包
💻 JAVA
字号:
/* *  (C) 2001 by Argonne National Laboratory *      See COPYRIGHT in top-level directory. *//* *  @author  Anthony Chan */package logformat.slog2;import java.util.Enumeration;public class Permutation implements Enumeration{    private int    numLevels;    private int    numChildrenPerNode;    private long   enum_idx;    private long   enum_max;    private int[]  next_enum;    public Permutation( int Nlevels, int Nchilds )    {        numLevels           = Nlevels;        numChildrenPerNode  = Nchilds;        next_enum           = new int[ numLevels ];        for ( int idx = 0; idx < numLevels; idx++ )            next_enum[ idx ] = 0;        enum_max            = (long) Math.pow( (double) Nchilds,                                               (double) Nlevels );        enum_idx            = 0;    }    public boolean hasMoreElements()    {        return enum_idx < enum_max;    }    public Object nextElement()    {        int[] curr_enum = (int[]) next_enum.clone();        // Update next_enum        for ( int ilevel = 0; ilevel < numLevels; ilevel++ ) {            next_enum[ ilevel ]++;            if ( next_enum[ ilevel ] < numChildrenPerNode )                break;            else                next_enum[ ilevel ] = 0;        }        enum_idx++;        return curr_enum;    }    public static final void main( String[] args )    {        int Nlevels = Integer.parseInt( args[ 0 ] );        int Nchilds = Integer.parseInt( args[ 1 ] );        int[] icfg;        Enumeration perms = new Permutation( Nlevels, Nchilds );        while ( perms.hasMoreElements() ) {            icfg = (int[]) perms.nextElement();            for ( int idx = 0 ; idx < icfg.length; idx++ )                System.out.print( icfg[ idx ] + " " );            System.out.println();        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -