先交个小作业

作者: Snow__ | 来源:发表于2017-05-23 12:42 被阅读0次

测试题1:求100以内的素数。

思路:简单粗暴,两次遍历,看每个数能不能被从2开始到本身的数(其实可以到本身的平方根就可以啦)整除。

def is_prime(n):
    if n == 1:
        return False
    for i in range(2, n + 1):
        fg = 1
        for j in range(2, i):
            if i % j == 0:
                fg = 0
                break
        if fg == 1:
            print(i)

is_prime(100)

其实用列表写起来会更方便些,因为想着不用列表,所以就没有使用列表。(啊啊啊,C语言式的写法,一点都不Python!)
看到群里小伙伴的另一种思路:先建立一个0-100的列表,每遍历一个数,就把它的倍数删除。一边遍历一边删除,剩下来的就是素数了。但是这种算法的时间复杂度也是O(n^2)。不知道有没有什么更好的算法呢。

相关文章

  • 先交个小作业

    测试题1:求100以内的素数。 思路:简单粗暴,两次遍历,看每个数能不能被从2开始到本身的数(其实可以到本身的平方...

  • 先交个小作业

    求1000以内的完全数有哪些如果一个数恰好等于它的因子之和,则称该数为“完全数”,又称完美数或完备数。例如:第一个...

  • 培训日

    今天参加小优线下的培训,还要交手机,先交个作业

  • 交个作业

    交个作业

  • 学速写——148

    交个作业

  • D2高效阅读

    先交个作业

  • 交个作业

    感冒了,两天困死了

  • 交个作业

    今天交作业的日期到了,我还没写。今天来继续教育了,累的半死,就这样吧。

  • 交个作业

    最近闲暇时间顾着看股市,看房子,把书本给纳下了。炒股也是需要积累与学习的,而且要学的东西还特别多。今天太累了,先交...

  • 交个作业

    近年关,现在工作上不是很忙了,可以抽空写一点作业完成简书打卡。 虽然是自己的小规定,并非参与打卡活动,但也算是为自...

网友评论

    本文标题:先交个小作业

    本文链接:https://www.haomeiwen.com/subject/mmwwxxtx.html