时间空间复杂度(例子:1-n求和)
复杂度:https://blog.csdn.net/hebtu666/article/details/82463970
https://blog.csdn.net/hebtu666/article/details/82465495
二分
一个数组查找某个值1 2 3 5 6 7 8 9 10 15 20。。
查找11
Debug(二分)(#,’’’,打印)
二分:https://blog.csdn.net/hebtu666/article/details/81410301
桶排序 O(N) O(NlogN) O(N^2)
1 10000000
e
0 1 2 1 2 1 0 1 1
0 1 2 3 4 5 6 7 8
O(e)
1 2 2 3 4 4 5 7 8
排序稳定性
https://blog.csdn.net/hebtu666/article/details/81434236,排序好好看
5 4 5 6 7 8
4 5 5 6 7 8
一、 50 10
二、 40 5
三、 45 20
四、 40 10
先按后面的数排 三一四二
再按前面的,一、三、四、二
埃氏筛
代码:
>>> a=0
>>> for i in range(5):
a+=i
>>> print(a)
10
>>> print(o(n))
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
print(o(n))
NameError: name 'o' is not defined
>>> print('o(n)')
o(n)
>>> print('o(1)')
o(1)
>>> n=int(input())
5
>>> l=[0]*n
>>> l
[0, 0, 0, 0, 0]
>>> for i in range(n):
l[i]=int(input())
1
6
2
3
1
>>> print(sum(l))
13
>>> n=int(input())
5
SyntaxError: multiple statements found while compiling a single statement
>>> n=int(input())
5
>>> a=0
>>> for i in range(n):
a+=int(input())
1
2
3
4
5
>>> print(a)
15
>>> def f(key,l):
left,right=0,len(l)-1
while left<=right:
mid=int((left+right)/2)
if key<l[mid]:
right=mid-1
elif key>l[mid]:
left=mid+1
else:
print(mid)
return
print(-1)
>>>