Python 中不同排序技术的变体2024 年 8 月 29 日 | 阅读 6 分钟 什么是排序?排序是将数据按特定顺序排列的技术。它将数值数据按升序或降序排列。它用于以更易于理解的、更简单的方式表示数据。基于排序技术,人们开发了各种算法。 Python 中的排序技术及其变体Python 中有各种排序技术。它们是:
除了这些排序算法之外,Python 中还有不同的排序变体。这些技术包括行为不同的各种排序函数。 让我们通过不同的示例深入了解这些变体。
1) sort( )此函数用于就地排序数组。这意味着它直接修改数组或列表。它会改变元素的原始顺序。它不会创建输入数组或列表的副本。它的返回类型是 None,这意味着它不返回任何内容。这是一种更快的数组排序方法。由于它直接排序输入,因此占用的空间更少。 Python 中 sort( ) 函数的基本语法 此处,
sort 方法接受两个可选参数。这些参数不是 sort( ) 方法必需的。
让我们通过在 Python 中实现来理解 sort( )。 升序 代码 输出 Unsorted Array: [99, 3, 56, 22, 15, 0] Sorted Array: [0, 3, 15, 22, 56, 99] 说明 我们使用sort( ) 方法按升序对数组进行了排序。此方法不会创建数组的副本;它只是对原始输入数组进行排序。 降序 代码 输出 Unsorted Array: [90, 13, 46, 82, 5, 1000] Sorted Array: [1000, 90, 82, 46, 13, 5] 说明 我们使用sort( ) 方法按降序对数组进行了排序。我们将 reverse 参数设置为 False,这会将数组按降序排序。此方法不会创建数组的副本;它只是对原始输入数组进行排序。 2) sorted( )这是另一种排序数组的方法。与 sort( ) 方法不同,它会创建输入列表的副本,然后对其进行排序,并返回新的已排序数组或列表。由于它创建了输入数组的副本,因此占用的空间更多。它会在排序后返回列表。它比 sort( ) 方法慢。 Python 中 sorted() 方法的基本语法 这里,
sorted( ) 方法接受 3 个参数,其中两个是可选的,一个是必需的。
让我们通过在 Python 中实现来理解 sorted( ) 方法。 升序 代码 输出 Unsorted Array: [199, 1223, 145, 256, 67, 89, 0] Sorted Array [0, 67, 89, 145, 199, 256, 1223] 说明 使用sorted( ) 方法,我们已按升序对数组进行了排序。首先,我们将定义一个输入数组,然后创建一个对象,该对象将复制原始数组,对其进行排序,并返回已排序的副本元素。 降序 代码 输出 Unsorted Array: ('a', 'c', 'z', 'abccd', 'p', 'pillow', 'i') Sorted Array: ['pillow', 'abccd', 'a', 'c', 'z', 'p', 'i'] 说明 使用sorted( ) 方法,我们已按降序对字符串数组进行了排序。首先,我们将定义一个输入数组,然后创建一个对象来复制原始数组。我们将 reverse 值设置为 False,这将根据数组中元素的长度(因为 key 参数设置为 len(长度))按降序对数组进行排序。然后,它将在排序后返回输出数组。 3) argsort( )此方法是 Python 中使用的另一种排序技术。argsort( ) 方法间接对输入数组进行排序,并返回与输入数组形状相同的已排序数组的索引。它占用的空间更多,因为会返回一个包含已排序数组索引的新数组。 argsort( ) 方法的基本语法是: 这里,
argsort( ) 接受一些可选参数,如下所示:
让我们通过在 Python 中实现来理解 argsort( )。 代码 输出 Unsorted Array: [19, 129, 153, 326, 41, 93, 10] Sorted Indices [6 0 4 5 1 2 3] Sorted Array: [ 10 19 41 93 129 153 326] 说明 使用argsort( ) 方法,我们已按升序对数组进行了排序。首先,我们将定义一个输入数组,然后创建一个对象来复制原始数组,对其进行排序,并返回已排序数组的索引。然后,我们定义另一个数组,该数组将从索引复制已排序数组,然后打印已排序数组。 lexsort( )此方法还用于使用一组键间接对元素进行排序。它可以一次对多个数组进行排序。我们需要两个输入可迭代对象来进行 lexsort( ) 排序。首先,它将按第一个数组排序,然后按第二个数组排序。结果是返回一个包含已排序键索引的数组。 lexsort( ) 函数的基本语法是: 这里,
让我们通过在 Python 中实现来理解 lexsort( )。 代码 输出 Unsorted Array: [10 23 4 67] [ 3 56 78 2] Sorted Indices: [2 0 1 3] Sorted Array: [(4, 78), (10, 3), (23, 56), (67, 2)] 说明 使用lexsort( ) 方法,我们已按升序对两列进行了排序。首先,它将对 col1 进行排序,然后对 col2 进行排序,并相应地打印索引。 |
欧几里得距离是欧几里得空间中的距离;这两个概念以古希腊数学家欧几里得命名,他的《几何原本》在很长一段时间内成为计算的标准教科书。长度和距离的概念在不同文化中普遍存在,可以追溯到...
阅读 8 分钟
在 Python 中使用 get() 通过键从字典获取值 在本教程中,我们将学习如何在 Python 中使用 get() 方法从字典中获取值。如何创建字典 字典是 Python 中用于存储数据的强大信息结构,可以在其中重新创建...
5 分钟阅读
简介 曲线拟合是一种优化,它为已定义的函数找到一组最佳参数,以适用于给定的一组观测值。与监督学习不同,曲线拟合需要我们定义将输入示例映射到输出的函数。用于...
阅读 8 分钟
表达式的数据类型通常取决于其参数的类型。大多数运算符都遵循此要求;例如,当两个数字相加时,结果也必须是整数。由于两个相互矛盾的假设,这在以下情况下效果不佳...
阅读 3 分钟
简介 Treap 是一种特殊且有效的数据结构,它结合了最大堆和二叉搜索树 (BST) 的特性。Treap 中的每个节点都包含两个键值:一个用于保证堆属性,另一个用于维护顺序,much...
阅读 10 分钟
自定义解析器行为 Python 模块 'configparser'。利用 ConfigParser 模块来监督任何应用程序的用户文档和文件。文档格式被协调成段落;每个部分都可以包含用于协调数据的键值对。还支持使用 Python 格式化字符串技术进行键值插入...
阅读 8 分钟
? RESTful API,或简称为 REST API,是一种遵循表征性状态传输 (REST) 架构原则的 Web 服务。REST 是一组应用于 Web 服务的架构约束,可用于创建高度可伸缩和灵活的 Web ...
阅读 4 分钟
Python 是一种“面向对象编程语言”。此语句表示大多数代码都是在特殊构造(称为类)的帮助下实现的。程序员利用类将相关事物放在一起。我们可以借助关键字来完成此操作...
阅读 3 分钟
一个整数被称为 n 阶阿姆斯特朗数。当它每个数字被分离、立方并相加时,结果之和与该数字相同,(即,pqrs... = pn + qn + rn +...)
阅读 3 分钟
Python 有许多其他的 GUI 框架,但只有 Tkinter 被包含在核心库中。Tkinter 具有许多优点。由于它是跨平台的,相同的代码可以在 Windows、macOS 和 Linux 上运行。由于 Tkinter 使用本机操作系统组件来...
阅读 10 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India