一个全排列另类算法

原创 2007年09月21日 17:09:00
#include "stdio.h"
#include 
"stdlib.h"
int main()
{
    
void pre(int*,int);
    
int a[9]={1,2,3,4,5,6,7,8,9};
    pre(a,
9);
    system(
"pause");
    
return 0;
}

void pre(int a[],int n)
{
     
int t,i,k,j,e;
     
for(e=n,i=1;e;i*=e,e--);//n!
     for(k=1;k<i;k++){
          
for(e=k,j=1;!(e%(j+1));e/=j,j++);
          
          
for(e=1;e*2<j;e++)
          
{t=a[e];a[e]=a[j-e];a[j-e]=t;}
              
          t
=a[j];a[j]=a[0];a[0]=t;
             
          
for(t=0;t<n;t++)
          printf(
"%d-",a[t]);
          printf(
"   %d ",k);
          }

}
 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

openstack中安全方面基础知识介绍及keystone的PKI

背景: 最为公有云平台,安全性是一个非常需要考虑的因素,

《云计算安全体系》之虚拟化安全读后总结

《云计算安全体系》之虚拟化安全读后总结云计算安全体系之虚拟化安全读后总结 虚拟化架构 虚拟化安全隐患 虚拟化安全攻击 虚拟化安全解决方法 虚拟化架构之前了解比较少,重点记录下 * 裸机虚拟化:无需H...

openstack的安全

分析了一段时间openstack的安全,觉得有下面这些事情要做: (1)

一个很好的字符串全排列算法

package com.visionsky;  public class test {      private char[] numbers =&#...

一个包含M个元素的集合N个位置的全排列算法(附C代码)

问题起源: 最早是群里一个兄弟要用到,原意大概是要枚举3个

一个组合加全排列的面试算法题及其解

题目:         给定

每天一个算法: 全排列算法

全排列算法:给出一个有n个元素的集合,求出这个集合所有可能的排列。 一、 递归的方法void permutation(char *arr, int k , int m){ if(k ==...

全排列的生成算法

  • 2013-12-23 10:19
  • 68KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)