目录
36.
题目:求100之内的素数
思路:只要在小于100中找到除了他本身,而且还可以被其他数整除,则不是素数
普通方法
"""
CSDN : heart_6662
PYTHON amateur
"""
lower = int(input("请输入区间最小值:"))
upper = int(input("请输入区间最大值:"))
for num in range(lower,upper+1):
if num > 1:
for i in range(2,num):
if (num % i) == 0:
break
else:
print(num)
列表推导式
for i in range(2,100):
if 0 not in [i%n for n in range(2,i)]:
print i,
37.
题目:对10个数进行排序
思路:1.冒泡排序
2.二分查找
3.选择排序
4.快速排序
我这里展示快速排序
"""
CSDN : heart_6662
PYTHON amateur
"""
def partition(li,left,right):
tmp = li[left]
while left < right:
while left < right and li[right] >= tmp:
right -= 1#向左走一步
li[left] = li[right]#把右值写到左边空位上
#print("right完成",li)
while left < right and li[left] <= tmp:
left += 1
li[right] = li[left]#把左值写到右边
#print("left完成",li)
li[left] = tmp
return left #其实是返回mid的值
def quick_sort(li,left,right):
if left<right:#判断至少两个元素
mid = partition(li,left,right)
quick_sort(li,left,mid-1)
quick_sort(li,mid+1,right)
li = [5,7,4,6,3,1,2,9,8]
# print(li)
# partition(li,0,len(li)-1)
# print(li)
quick_sort(li,0,len(li)-1)
print(li)