python中的常见排序算法

2007向凤盏 2007向凤盏 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

1.顺序查找:从列表中的第一个元素开始,顺序进行搜索,直到找到为止,复杂度为O(n)。

2.二分查找:从有序列表中,通过待查值与中间值进行比较,以减半的方式进行查找,O(logn)。

3.冒泡排序:列表中每相邻两个如果顺序不是我们预期的大小排列,则交换。时间复杂度为O(n^2)。

4.选择排序:一趟遍历选择最小的数放在第一位,再进行下一次遍历直到最后一个元素。复杂度依然为O(n^2).

下面给出冒泡排序的参考代码:

"""
Python冒泡排序
两个for
"""

s = list(map(int,input().split(" ")))# 输入列表,以空格分隔,返回列表。   在此,就可输入:3 2 4 1 5
for i in range(len(s)):
    for j in range(len(s)-i-1):
        if s[j] > s[j+1] :# 此为判断是否大于后一个数,大于就换(升序判断),如果想是降序,就把">"改成"<"
            s[j], s[j+1] = s[j+1], s[j]

for i in s:
    print(i,end=" ")# 输出,按之前,输出为:1 2 3 4 5

    

 

...全文

相关推荐

评论
收藏 已收藏
分享
返回顶部
2007向凤盏
42python 124 成员 589 内容