Python全系列 教程
3567个小节阅读:5930.8k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
arr = [3,7,9,2,6,4,10,1,3,8]
arr[7]
#----------------------------
data = {'a':1,'b':'2','c':2}
data.get('b')
xxxxxxxxxx
def func(num):
arr = [3,7,9,2,6,4,10,1,3,8]
for i in arr:
print(num == i)
#----------------------------
def sum_numbers(arr):
res = 0
for num in arr:
res += num
return res
xxxxxxxxxx
def binary_search(arr, target):
left, right = 0, len(arr) - 1
while left <= right:
mid = (left + right) // 2
if arr[mid] == target:
return mid
elif arr[mid] < target:
left = mid + 1
else:
right = mid - 1
return -1
xxxxxxxxxx
def search_matrix(matrix, target):
m, n = len(matrix), len(matrix[0])
left, right = 0, m * n - 1
while left <= right:
mid = (left + right) // 2
i, j = divmod(mid, n)
if matrix[i][j] == target:
return (i, j)
elif matrix[i][j] < target:
left = mid + 1
else:
right = mid - 1
return None
xxxxxxxxxx
for i in range(1, 10):
for j in range(1, 10):
print('{0}x{1}={2}'.format(i, j, i*j), end='\t')
print()
总结
O(1)是最快的时间复杂度,O(n!)一般是最慢的时间复杂度,算法的时间复杂度越低,效率越高。在编写程序时,需要根据问题的规模和复杂度选择合适的算法和数据结构。
实时效果反馈
1. 关于大O表示法,说法错误的是?
A 大O表示法O(1)最快的
B 大O表示法O(n!)一般最慢的时间复杂度
C 大O表示法时间复杂度排名是不会变的
D 大O表示法每种可以应用多种场景,并不是只有一种业务
答案
1=>C