大学数据结构与算法常用排序算法
1个回答
展开全部
数据结构常用算法排序算法
写在前面
排序本质上就是按照某种顺序将一组数排好,分多次重复进行,每次只负责把一个数字放到合适的位置上
两种思路:
①先确定一个数字,然后根据数据找合适的位置;
②先确定一个位置,根据位置找合适的数字;
冒泡排序算法
先确定位置,选最前面或者最后面,假设选择了最后面的位置,就是重复的把最大的数放到最后面代码实现
选择排序算法
只能选择最前面最后面的位置,那选择的位置向前或者向后依次与每一个数做顺序调整代码实现
插入排序算法
先确定数字,假设前面的数已经排序好,把它们和相邻的后面的那个数字作为选定数字,把选定数字向前插入到合适的位置:
快速排序算法
在数组中从头部或尾部选择一个数,然后进行排序,比如比它小的在左,比它大的在右,这个数就是枢轴,每次与枢轴进行比较进行顺序调整后的数,我们认为他们的相对位置已经固定,那么这个数就排出在外,不再处理。
排好左右,左右两边分成两部分,在各自选定一个数再次进行这样的排序,注意只能从数组的两头选数,以此类推。这可以用递归函数来实现:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询