Python 最近在计算机科学领域占据主导地位,其应用领域包括机器学习、数据科学、人工智能、网络开发和软件编程,这些都是21世纪的最新趋势。根据 PYPL 编程语言普及指数,与其他编程语言相比,python 大约占总份额的31.6% 。
python
所以,我想我们可以用最好的方式来学习 python,通过构建一个精彩的项目来掌握任何编程语言中的一个基本原理—— sorting。在本文结束时,你可以用五种不同的算法构建一个令人惊叹的排序可视化工具:
•选择排序•冒泡排序•插入排序•归并排序•快速排序
算法
让我们创建一个名为algorithms.py的文件,在这个文件中,我们将用 python 编写所有的排序算法。导入time模块来告诉用户可视化工具所花费的时间(注意: 显示的时间是系统渲染可视化工具所花费的时间,与排序算法无关)。创建一个称为Algorithm的类,并将这段代码粘贴到这里:
classAlgorithm:
def__init__(self,name):
self.array=random.sample(range(512),512)# Random array of size 512
self.name=name# Get name of the variable
defupdate_display(self,swap1=None,swap2=None):
importvisualizer
visualizer.update(self,swap1,swap2)# pass the indexes to be swapped into the visualizer
defrun(self):# Start the timer and run the algorithm
self.start_time=time.time()
self.algorithm()
time_elapsed=time.time()-self.start_time
returnself.array,time_elapsed
我们最初将创建一个大小为512的随机数组。在 update_display 方法中,我们将调