python sort函数时间复杂度_python sort()排序算法

本文详细介绍了Python内置的`sort()`和`sorted()`函数,包括它们的基本用法、按照指定关键词排序以及时间复杂度。特别强调了Python使用高效的Timsort算法,该算法具有稳定性和较低的时间复杂度,适用于大多数排序需求。
摘要由CSDN通过智能技术生成

在刷leetcode一道要求时间复杂度的题目,用了sort排序,发现时间复杂度还可以。

#python的排序详解

排序,在编程中经常遇到的算法,我也在几篇文章中介绍了一些关于排序的算法。有的高级语言内置了一些排序函数。本文讲述Python在这方面的工作。供使用python的程序员们参考,也让没有使用python的朋友了解python。领略一番“生命有限,请用Python”的含义。

##内置函数sorted()/list.sort()的使用

###简单应用

python对list有一个内置函数:sorted(),专门用于排序。举例:

>>> a=[5,3,6,1,9,2]

>>> sorted(a) #a经过sorted之后,得到一个排序结果

[1, 2, 3, 5, 6, 9] #但是,原有的a并没有受到影响

>>> a

[5, 3, 6, 1, 9, 2]

也可以使用list.sort()来进行上述操作。

>>> a.sort()

>>> a #注意这里,经过list.sort()之后,原有

[1, 2, 3, 5, 6, 9] #a的顺序已经发生变化,与上述不同之处。

**sorted和list.sort()的区别:**list.sort()只能对list类型进行排序。如下:

>>> b_dict={1:'e',3:'m',9:'a',5:'e'}

>>> b_dict.sort()

Traceback (most recent call last):

File "", line 1, in

AttributeError: 'dict' object has no attribute 'sort'

而sorted则不然,看例子:

>>> b_dict

{1: 'e', 3: 'm', 5: 'e', 9: 'a'}

>>> sorted(b_dict)

[1, 3, 5, 9]

sorted之后,上述对dictinoary中,将key值取出并排序

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值