牛客网HJ6 质数因子Python3解法

题目介绍: 

解题思路:

1.暴力破解,时间复杂度高

就是从2一直除到N-1,每次能整除N的话,则把整除后的商重新赋值给N。执行的时间复杂度为O(n),当质数比较大,如10007时,效率就太低了。

2.试除法

求一个数N的质数因子,有两种可能:

①N本身就是质数;

②如果存在N=a*b(1≤a≤b≤N),那么就能得知N不是质数,这样可推知当a=b=\sqrt[]{N}时,就不用了再往后去找N的整数因子了,因为\sqrt[]{N}之后也不会再有N的整数因子了。

比如有:

18=2*9

18=3*6

18=\sqrt{18}*\sqrt{18}

18=6*3

18&

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值