潍坊市论坛

首页 » 分类 » 问答 » offerMe数据结构排
TUhjnbcbe - 2021/3/29 18:40:00

.序

从今天开始我分模块推出面试指南,首先作为程序员最重要的是数据结构,数据结构是我们的本科课程,同时也是我们的必备课程。排序是我们的必考内容,今天以排序算法引出我们的数据结构。

2.总.详叙.插入排序..直接插入

博客链接(详解)


  把n个待排序的元素看成一个有序表和一个无序表,开始时有序表中只有一个元素,无序表中有n-个元素;排序过程即每次从无序表中取出第一个元素,将它插入到有序表中,使之成为新的有序表,重复n-次完成整个排序过程。

实例:

0.初始状态,,5,7,2,4,9,6(共8个数)

有序表:;无序表:,5,7,2,4,9,6

.第一次循环,从无序表中取出第一个数,把它插入到有序表中,使新的数列依旧有序

有序表:,;无序表:5,7,2,4,9,6

2.第二次循环,从无序表中取出第一个数5,把它插入到有序表中,使新的数列依旧有序

有序表:,,5;无序表:7,2,4,9,6

.第三次循环,从无序表中取出第一个数7,把它插入到有序表中,使新的数列依旧有序

有序表:,,5,7;无序表:2,4,9,6

4.第四次循环,从无序表中取出第一个数2,把它插入到有序表中,使新的数列依旧有序

有序表:,2,,5,7;无序表:4,9,6

5.第五次循环,从无序表中取出第一个数4,把它插入到有序表中,使新的数列依旧有序

有序表:,2,,4,5,7;无序表:9,6

6.第六次循环,从无序表中取出第一个数9,把它插入到有序表中,使新的数列依旧有序

有序表:,2,,4,5,7,9;无序表:6

7.第七次循环,从无序表中取出第一个数6,把它插入到有序表中,使新的数列依旧有序

有序表:,2,,4,5,6,7,9;无序表:(空)

..2希尔排序

博客链接(详解)

1
查看完整版本: offerMe数据结构排