摘要
排序算法多种多样,插入类排序、交换类排序、选择类排序、归并类排序,不同种类的排序算法的排序过程各不相同。然而,其中很多算法都可以由递归与分治这一经典的问题求解策略导出。论文研究直接插入排序、简单选择排序、冒泡排序、快速排序以及归并排序背后隐含的递归与分治原理,并从递归与分治的角度分析他们的排序原理、排序过程以及排序性能之间存在的异同,以便加深对排序算法以及递归与分治策略的理解。
There are various types of sorting algorithms, including insertion-based, swap-based, selection-based, and merge-based sorting algorithms. Different sorting algorithms have different sorting principles and processes. However, many of these algorithms can be derived from the classic problem solving strategy-recursion and divide-and-conquer. This paper studies the recursion and divide-and-conquer strategy behind those sorting algorithms. After that, from the perspective of recursion, the similarities and differences between those sorting algorithms in sorting principle, process and sorting performance are analyzed. As a result, one can deepen their understanding of sorting algorithms and recursive and divide-and-conquer strategies.
作者
张忠诚
鲁法明
ZHANG Zhongcheng;LU Faming(College of Computer Science and Engineering, Shandong University of Science and Technology, Qingdao 266590)
出处
《计算机与数字工程》
2019年第9期2109-2114,共6页
Computer & Digital Engineering
基金
国家自然科学基金项目(编号:61602279)
山东省博士后创新专项资金项目(编号:201603056)
国家海洋局海洋遥测工程技术研究中心开放基金项目(编号:2018002)
山东科技大学计算机学院杰出青年基金项目资助
关键词
排序算法
递归与分治
算法设计与分析
sorting algorithm
recursion and divide-and-conquer
algorithm design and analysis