十大算法

时间复杂度O(n)
在这里插入图片描述
1.冒泡排序
(1)比较相邻的元素。如果第一个比第二个大,就交换它们两个
(2)对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数
(3)针对所有的元素重复以上的步骤,除了上次的最后一位在这里插入图片描述

#!/usr/bin/python3
lst=[1,9,8,5,6,7,4,3,2]
for i in range(len(lst)):
	for j in range(len(lst)-1-i):
		if lst[j]>lst[j+1]:
			lst[j],lst[j+1]=lst[j+1],lst[j]
print(lst)

优化后:

#!/usr/bin/python3
lst=[1,9,8,5,6,7,4,3,2]
for i in range(len(lst)):
	flag=False
	for j in range(len(lst)-1-i):
		if lst[j]>lst[j+1]:
			lst[j],lst[j+1]=lst[j+1],lst[j]
			flag=True
		if not flag:
			break
print(lst)
优化后降低了运算次数,提高了运算及效率

2.选择排序
n个记录的直接选择排序可经过n-1趟直接选择排序得到有序结果。在这里插入图片描述

	#!/usr/bin/python3
	import time
	nums=[1,9,8,5,6,7,4,3,2]
	for i in range(len(nums)):
		minindex=i
		for j in range(i+1,len(nums)):
			if nums[i]>nums[j]:
				minindex=j
			if minindex!=i:
				nums[i],nums[minindex]=nums[minindex],nums[i]
	print(nums)
优化后
	倒序排列
#
		#!/usr/bin/python3
		import time
		lst=[1,9,8,5,6,7,4,3,2]
		for i in range(len(lst)//2):
			maxindex=i
			minindex=-i-1
			for j in range(i+1,len(lst)):
				if lst[maxindex]<lst[j]:
					maxindex=j
				if lst[minindex]>lst[-j-1]:
					mindex=-j-1
			if i!=maxindex:
				lst[i],lst[maxindex]=lst[maxindex],lst[i]
				if i==minindex or i==len(lst)+minindex:
					minindex=maxindex
			if -i-1!=minindex:
				lst[-i-1],lst[minindex]=lst[minindex],lst[-i-1]
		print(lst)
顺序排列(只是改变了条件中大小符号)
	#
	#!/usr/bin/python3
	import time
	lst=[1,9,8,5,6,7,4,3,2]
	for i in range(len(lst)//2):
		maxindex=i
		minindex=-i-1
		for j in range(i+1,len(lst)):
			if lst[maxindex]>lst[j]:
				maxindex=j
			if lst[minindex]<lst[-j-1]:
				mindex=-j-1
		if i!=maxindex:
			lst[i],lst[maxindex]=lst[maxindex],lst[i]
			if i==minindex or i==len(lst)+minindex:
				minindex=maxindex
		if -i-1!=minindex:
			lst[-i-1],lst[minindex]=lst[minindex],lst[-i-1]
	print(lst)

3.插入排序
和冒泡思想差不多,就是依次和前边比但是不用每次换位,找到合适位置一次插入即可在这里插入图片描述

#!/usr/bin/python3
import random
lst=[1,9,8,5,6,7,4,3,2]
for i in range(1,len(lst)):
	tempnum=lst[i]
	j=i-1
	while tempnum<lst[j]:
		lst[j+1]=lst[j]
		j-=1
		if j<0:
			break
	lst[j+1]=tempnum
print(lst)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经典算法 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 机器学习中,决策树是一个预测模型;他代表的对象属性与值之间种映射关系。 树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结树中每个节点表示某对象,而分叉路径则 代的可能属性值叶结对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 对应从根节点到该叶所经历的路径表示象值。决策树仅有单一输出,若欲复 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 数输出,可以建立独的决策树处理不同。 从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做从数据产生决策树的机器学习 技术叫做, 通俗说就是决策树。 通俗说就是决策树。 通俗说就是决策树。 通俗说就是决策树。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值