一、原理
插入排序是简单排序中最快的排序算法,插入排序时间复杂度为O(n*n)
把n个待排序的元素看成一个无序表,将指针指向其中一个元素,假设该元素左边的元素都是有序的,将该元素抽取出来,按照从右往左的顺序分别与左边的元素比较,如果遇到的元素比该元素大,则遇到的元素右移,与该元素交换位置,直到找到比该元素小的元素或者移动到最左边发现其他元素都比它大,将该元素放到当前位置上,此时该元素的左边元素都比它小,右边元素都比他大,然后将指针指向下一个位置,重复之前的操作。
插入排序是简单排序中最快的排序算法,插入排序时间复杂度为O(n*n)
把n个待排序的元素看成一个无序表,将指针指向其中一个元素,假设该元素左边的元素都是有序的,将该元素抽取出来,按照从右往左的顺序分别与左边的元素比较,如果遇到的元素比该元素大,则遇到的元素右移,与该元素交换位置,直到找到比该元素小的元素或者移动到最左边发现其他元素都比它大,将该元素放到当前位置上,此时该元素的左边元素都比它小,右边元素都比他大,然后将指针指向下一个位置,重复之前的操作。
本文标题:Java排序算法分析与实现------插入排序
本文链接:https://www.haomeiwen.com/subject/tjjvrqtx.html
网友评论