首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

经典排序之选择排序

了解一个知识,必须要从其含义开始。 什么是选择排序呢,用一个例子来解释:仍然是同学排队问题 假设有A、B、C、D四位同学,该四位同学是身高大小情况为【B>A>D>C】,且目前的顺序为【A、B、C、D】 接下来用选择排序的思维为他们设计排序方法。 首先,在四位同学中挑选一位最低的同学将其和第一位同学交换位置,也就是C同学和A同学交换位置。此时的排序占位为【C、B、A、D】。接下来,不在管理第一位同学,将B同学,位于第二位的同学,和剩下的A和D同学中选择一个最小的同学,和B同学比较,发现其中的D同学身高最低,那么就将D同学和B同学调换位置。此时的位置顺序为【C、D、A、B】。接着,再看第三位A同学,在后几位同学中选择最低的同学。也就是B同学,与A同学比较身高。发现A同学为最低的同学,那么将不交换位置。此时的位置顺序仍为【C、D、A、B】。此时剩余最后一个元素(同学B),为最高同学,不进行比较。 通过这一个小例子可以大概了解到选择排序的含义。

02
您找到你想要的搜索结果了吗?
是的
没有找到

插入排序,一篇文章搞定

了解一个知识,需要从它的含义开始。 什么是插入排序呢,用一个例子来说明:按照身高排队🌰 一群小朋友站在一起,老师让他们按照从低到高进行排队,小朋友们不知道怎么排队,于是老师让他们先站成一排,已知排队顺序为【A,B,C,D】,其中B>A>D>C。 老师从第B同学开始,把第B同学拎出来,先让他和第A同学进行比较,如果A同学身高低于B同学的。那么就把第B同学放回第二位的位置。同理,A同学比B同学高,那么交换位置。 到这并不能体现出插入排序的意义,由此,向下看 然后老师拎出C同学,和B同学进行比较,恰好C同学比B矮,那么,让第B同学到C同学的位置上,但是C同学暂时不排队,接着让C同学与A同学进行比较。发现C同学比A同学矮,所以让A同学到B同学原来的位置上,也就是说像右移动一位。此时在把C同学插入到A同学原来的位置上。此时的排队顺序是【C,A,B,D】。 接着将D同学拎出来,和B同学比较身高,B同学比D同学高,那么让B同学到D同学的位置上。继续拎着D同学和A同学比较,A>D,所以A同学到B同学上一次的位置上。接着拎着D同学和C同学比较,发现D>C,所以再将D同学插入到第二个位置上,此时排队顺序是【C,D,A,B】。 由此,排队完成。举这个例子的目的主要是了解插入排序是怎么插入到其中的。

03
领券