zoukankan      html  css  js  c++  java
  • 三位数全排序

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    namespace quanpaixu

    {

        class Program {

             static void Main(string[] args)

                {

                   int[] a = new int[] { 5, 4, 3 }; //全排序数组

                   Program s = new Program();

                   int i=0;

                   s.paixu(a,i); //全排序

                }

              public void paixu(int[] a,int i) //把全排序数组分割成一个单独的数和一个长度减小1的数组(i为坐标)

                {

                   int t = 0; int c = 0;

                   int[] temp = new int[a.Length-1]; //存储分割后的数组

                   int b = 0;

                   for (int k = 0; k < a.Length; k++)

                     {

                       if (k == i)

                         {

                            t = a[k]; //取坐标为i的值,根据此值开始运算

                          }

                       else

                          { temp[b] = a[k];

                            b = b + 1;

                          }

                       }

                        insert(temp,t,c); //排序数组

                        i = i + 1; //遍历,长度超过数组长度时,跳出

                        if (i > a.Length - 1) { return; }

                        paixu(a, i);

                    }

                  public void insert(int[] a1,int t,int c)

                    {

                       int[] b = new int[a1.Length + 1]; b[0] = t;

                           if (c == 0) //不同的排序情况

                               { for (int j = 0; j < a1.Length; j++) { b[j + 1] = a1[j]; } }

                          else { for (int k = 0; k < a1.Length; k++) { b[k + 1] = a1[1-k]; } }

                       for (int d = 0; d < b.Length; d++)//输出遍历结果

                           { Console.Write(b[d]+" "); }

                       Console.WriteLine();

                      c = c + 1; //生出不同的排序结果,遍历

                     if (c > 1) { return; }

                      insert(a1, t, c);

    } } }

  • 相关阅读:
    安卓笔记:Android 界面设计指南——人人都是产品经理就是个玩笑话
    Windows CMD 命令
    安卓开发:dex 文件反编译
    VBA 学习笔记 运算符
    工商管理同等学力申硕全国统一考试资料整理
    VBA 学习笔记 判断语句、循环
    VBA 学习笔记 日期时间函数
    安卓自动领水果福气
    【合集】人大商学院同等学力工商管理
    安卓笔记:进度设计原则和常见错误
  • 原文地址:https://www.cnblogs.com/dalas/p/1800068.html
Copyright © 2011-2022 走看看