Python程序:对数组进行排序
通常有多种对数组进行排序的方法。该数组可以按升序或降序排序。按升序排序的数组将先拥有较小的元素,然后再拥有较大的元素。按降序排序的数组将先拥有较大的元素,然后再拥有较小的元素。
一般可以使用Python语言的基本特性来对数组进行排序。为了做到这一点,需要使用两个循环。
输入输出场景
考虑一个数组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(“排序前的数组元素:”);
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(“排序后的数组元素:”)
for i in range(0,max_size):
print(arr [i],end =“”)
输出
上述程序的输出如下 –
排序前的数组元素:
5 9 1 10 3 8 4 2 7 6
排序后的数组元素:
1 2 3 4 5 6 7 8 9 10
结论
以这种方式,对数组进行升序或降序排序的过程是通过使用Python的基本特征,如循环,条件语句等来完成的。这并不被认为是一种有效的技术,因为还存在其他有效的算法,可以大幅减少运行时间,但只要具备编程语言的基本知识,就可以轻松构建和理解这个算法。这种技术主要用于较小的应用程序。