考研机试C/C++的常用算法(更新ing)

1.逆置


int reversenum(int n){
int res=0;
while(n)
{
res*=10;
res+=n%10;
n/=10;
}
return res;
}

2.返回公约数的个数O(log n)

int  divisor(int n){
	int d=0;
	for(int i=1;i<=n/i;i++)//将n对半分
	{
		if(n%i==0){//n的所有约数可以表示为i,j(都为整数)n=i*j;
			d+=2;//i与j值不同,个数+2
			if(i==n/i){//i与j值相同,个数-1
				d--;
			}
		}
	}
	return d;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值