共有回帖数  0  个 
	 
	
	
	
     
          
          
               
				
			 
				
					 
 
            
				   - 
						
						
							 
									复习了数据结构与算法,把其中的全排列算法贴出来。 
#include stdio.h 
inline void Swap(char& a, char& b) 
{// 交换a和b 
    char temp = a; 
    a = b; 
    b = temp; 
} 
void Perm(char list[], int k, int m) 
{ //生成list [k:m ]的所有排列方式 
    int i; 
    if (k == m) {//输出一个排列方式 
        for (i = 0; i = m; i++) 
            putchar(list); 
        putchar('n'); 
    } 
    else // list[k:m ]有多个排列方式 
        // 递归地产生这些排列方式 
        for (i=k; i = m; i++) { 
            Swap (list[k], list); 
            Perm (list, k+1, m); 
            Swap (list [k], list ); 
        } 
} 
int main() 
{ 
    char s[]="123"; 
    Perm(s, 0, 2); 
    return 0; 
} 
							 
							 
							 
							  
							  
							  楼主 2016-02-25 13:19 回复
						 
						 
           
          
          
         
   
         
      
 
   
             
                  
                  
 
 
 
     
	 
  
	Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号
	
	意见反馈 | 
	关于直线 | 
	版权声明 | 
	会员须知