zoukankan      html  css  js  c++  java
  • 自己写的一个全排列算法,请各位指正。

    Code
    namespace permutation
    {
        
    class Program
        {
            
            
    static void Main(string[] args)
            {
                
    for (int i = 0; i < MAX; i++)
                {
                    chars[i] 
    = (char)((int)('a'+ i);
                    mark[i] 
    = 0;
                }

                Permutate();
                Console.WriteLine(
    "Total count is: {0}", count);
            }

            
    private static int MAX = 8;
            
    private static int count = 0;
            
    private static char[] chars = new char[MAX];
            
    private static char[] output = new char[MAX];
            
    private static int[] mark = new int[MAX];
            
    private static int output_index = 0;


            
    private static void Permutate()
            {
                
    for (int i = 0; i < MAX; i++)
                {
                    
    if (mark[i] == 0)
                    {
                        output[output_index] 
    = chars[i];
                        output_index
    ++;

                        
    if (output_index == MAX)
                        {
                            count
    ++;
                            
    for (int ii = 0; ii < MAX; ii++)
                                Console.Write(output[ii]);
                            Console.WriteLine();
                        }

                        mark[i] 
    = 1;
                        Permutate();
                        mark[i] 
    = 0;
                        output_index
    --;
                    }
                }
            }
        }
    }

    运行已经没有错误,只是想知道怎么能优化一下。

  • 相关阅读:
    东南亚互联网创业哪些领域比较有前景?
    2021最新最实用.NET Core笔试题附答案
    2021UpdateC#.NET笔试题基础篇
    Ubuntu下 安装MiniGUI
    MiniGUI 如何显示繁体字
    Android 基础一 TextView,Style样式,Activity 传值,选择CheckBox 显示密码
    【玩转开源】BananaPi R2 —— 第一篇 Openwrt安装
    JAVA面对对象(二)——继承、方法的覆写
    JAVA面对对象(一)——封装
    JAVA关键字及作用
  • 原文地址:https://www.cnblogs.com/smwikipedia/p/1456369.html
Copyright © 2011-2022 走看看