from math import sqrt
def fun(n):
li = []
for i in range(2, n + 1):
count = 0
for j in range(2, int(sqrt(i) + 1)):
‘‘‘
不用除到n是因为:
假如一个数N是合数,它有一个约数a,那么有a×b=N
则a、b两个数中必有一个大于或等于根号N,一个小于或等于根号N。
因此,只要小于或等于根号N的数(1除外)不能整除N,则N一定是素数
‘‘‘
if i % j == 0:
count += 1
if count == 0:
li.append(i)
return li
def fun2(n):
‘‘‘
5及以上的自然数可以表示为 6x+5 6x 6x +1 6x+2 6x+3 6x+4 其中只有6x+5和6x+1 不被2,3整除,所以有以下:
‘‘‘
li = [2, 3]
for i in range(5, n + 1):
if i % 6 == 1 or i % 6 == 5:
li.append(i)
return li
print(fun(100))
print(fun(5))
class Node(object): def __init__(self, elem, next_=None): self.elem = elem self.next = next_ def reverseList(head): if head == None or head.next==None: # 若链表为空或者仅一个数就直接返回 return head pre = None next = None while(head != None): next = head.next # 1 head.next = pre # 2 pre = head # 3 head = next # 4 return pre if __name__ == ‘__main__‘: l1 = Node(3) # 建立链表3->2->1->9->None l1.next = Node(2) l1.next.next = Node(1) l1.next.next.next = Node(9) l = reverseList(l1) print (l.elem, l.next.elem, l.next.next.elem, l.next.next.next.elem)
更多可参考:https://blog.csdn.net/gongliming_/article/details/88712221
原文:https://www.cnblogs.com/ycg-blog/p/12793482.html