一般来说,有多种方法对数组进行排序。该数组可以按升序或降序排序。按升序排序的数组将首先具有较小的元素,然后是较大的元素。按降序排序的数组将首先具有较大的元素,然后是较小的元素。
利用Python语言的基本特性,一般可以对数组进行排序。为此,使用了两个循环。
输入输出场景
Consider an array arr = [ 5, 9, 1, 10, 3 ].
登录后复制
现在,让我们通过将一个元素与另一个元素进行比较来对数组进行排序。
-
最初将第一个元素与其余元素进行比较。
-
重复相同的过程,直到最后一个元素,以便整个数组被组织或排序。
“arr”升序排列后的数组为sorted_array = [ 1, 3, 5, 9, 10 ]。
算法
-
步骤 1 - 最初,必须使用一些元素创建或声明一个数组。请注意,数组中存在的所有元素应属于相似的数据类型。
-
步骤 2 - 为了对元素进行排序,第一步是比较元素。将一个元素与其余元素进行比较。如果该元素小于其他元素,则将其放置在数组的第一个位置(当需要按升序排序的数组时)。因此,要进行比较,需要两个循环。第一个循环用于相应地从数组中选择一个元素。
-
步骤 3 - 第二个循环或内部循环用于将第一个循环中选择的元素与其他元素进行比较。元素的选择是通过增加索引号来完成的。这一步是整个排序过程中最重要的步骤之一。
-
步骤 4 - 比较元素后,检查外循环中选择的元素是否小于内循环中选择的元素。如果该元素小于另一个元素,则使用“ temp ”变量交换元素的值。 “temp”变量用作桥梁,以便存储其他元素的值并轻松交换值。 (这主要是为了按升序对数组进行排序)。
-
步骤 5 - 通过增加循环(内部循环和外部循环)中的索引值,继续并重复整个过程,直到所有元素都被比较和排序。整个过程完成后,得到的数组就是需要的排序数组。
示例
在下面的示例中,我们将了解通过按升序放置元素来对数组进行排序的过程。
arr = [5, 9, 1, 10, 3, 8, 4, 2, 7, 6]
temp = 0
max_size = len(arr)
print("The elements of the array before sorting: ");
for i in range(0, max_size):
print(arr[i], end=" ")
print()
for i in range(0, max_size):
for j in range(i+1, len(arr)):
if(arr[i] > arr[j]):
temp = arr[i]
arr[i] = arr[j]
arr[j] = temp
print("The elements of the array after sorting: ")
for i in range(0, max_size):
print(arr[i], end=" ")
登录后复制
输出
上述程序的输出如下 -
The elements of the array before sorting:
5 9 1 10 3 8 4 2 7 6
The elements of the array after sorting:
1 2 3 4 5 6 7 8 9 10
登录后复制
结论
通过这种方式,按升序或降序对数组进行排序的过程通过使用 Python 的基本特性(例如循环、条件语句等)来工作。这不被认为是一种有效的技术,因为还有其他有效的技术减少大量运行时间的算法,但只要具备编程语言的基础知识,就可以轻松构建和理解该算法。该技术主要用于较小的应用程序。
以上就是Python程序对数组进行排序的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!