其他分享
首页 > 其他分享> > 简单的列表查找和排序

简单的列表查找和排序

作者:互联网

1、列表查找

    也叫线性查找;

    从列表的第一个元素开始,顺序进行搜索,直到找到元素或搜索到列表的最后一个元素为止

    又叫折半查找;

    须在有序列表中进行;

    计算列表的中间值位置,将待查找值与中间值进行比较,生成新的候选区,直到候选区缩小到一个元素为止

2、列表排序

    列表中每两个相邻的元素进行比较,如果相邻元素的前后顺序不满足排序的顺序,把相邻的两个元素交换位置;

    列表中所有元素比较过一次后,无序区减少一个数,有序区增加一个数;

    无序区所有元素继续进行两两比较,直到无序区剩下最后一个数

    一趟排序找到列表中最小的数,与列表第一个元素交换位置;

    再一趟排序找到无序区中最小的数,与列表第二个元素交换位置;

    直到无序区剩下最后一个元素

    把列表第一个元素当作初始的有序区,其余为无序区;

    每次拿到无序区的第一个元素,把他插入到有序区中正确的位置;

    如果该元素在有序区中最大,位置不变;如果该元素在有序区中最小,有序区所有位置向后移动一位;

    取一个元素P(为了放便取第一个数),将该元素放置于列表中正确的位置(双指针法);

    列表被P分为两部分,左边的都比P小,右边的都比P大;

    递归完成其余元素的放置;

标签:区中,元素,无序,列表,查找,排序
来源: https://www.cnblogs.com/ddnr/p/16030381.html