一、冒泡排序
算法思想:
以升序为例, 每次比较两个相邻的元素,如果第一个比第二个大,就交换它们位置。从第一队到结尾最后一对元素,最后的元素就会是最大的数,对于所有的元素重复以上的步骤,除了已经排序完成的元素。以此类推,遍历n-1次后,整个数组就会变的有序.
动画教程:
代码实现:
二、插入排序
算法思想:
通过构建有序数组元素的存储,对未排序的数组元素,在已排序的数组中从最后一个元素向第一个元素遍历,找到相应位置并插入(如果待插入的元素与有序序列中的某个元素相等,则将待插入的元素插入有到相等元素后面)。其中,待排序数组的第一个元素会被看作是一个有序的数组,从第二个至最后一个元素会被看作一个无序数组。
动画教程:
代码实现: