码迷,mamicode.com
首页 > 其他好文 > 详细

使用递归求解1 到最大的n位数

时间:2014-08-12 13:38:34      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:使用递归求解1 到最大的n位数

用求排列方法:

代码:

#include<iostream>  

using namespace std; 
//使用递归求解1 到最大的n位数
void print(char * number){
	bool isBegin = true;
	int length = strlen(number);
	for(int i = 0; i < length; i ++){
		if(isBegin && number[i] != '0')
			isBegin  = false;
		if(!isBegin)
			printf("%c",number[i]);
	}
	printf("\t");
}

void printRecursively(char * number,int length,int index){
	if(index == length - 1){
		print(number);
		return ;
	}
	for(int i = 0;i<10;i++){
		number[index+1] = i + '0';
		printRecursively(number,length,index+1);
	}	
}
 
void printToMaxOfDigits(int n){
	if(n <= 0){
		return;
	}
	char * number = new char[n+1];
	number[n] = '\0';

	for(int i = 0; i< 10 ;i++)
	{
		number[0] = i +'0';	
		printRecursively(number,n,0);
	}
	delete[] number;
}

int main()  
{  
	printToMaxOfDigits(3);
    return 0;  
}  


使用递归求解1 到最大的n位数,布布扣,bubuko.com

使用递归求解1 到最大的n位数

标签:使用递归求解1 到最大的n位数

原文地址:http://blog.csdn.net/buyingfei8888/article/details/38513215

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!