软件工程与c语言chapter4.5-4.6.1.pptVIP

  • 3
  • 0
  • 约9.96千字
  • 约 63页
  • 2016-12-21 发布于贵州
  • 举报
教学目的与要求 通过本部分相关内容的学习,使同学们熟练掌握几种排序的思想及算法的具体实现;了解每种算法的各种性能;根据具体问题的实际情况,能选择合适的排序算法进行排序。 本节课内容的说明 内容:直接插入排序、交换排序 4.5 直接插入排序 一. 基本思想 将整个数据表(n个记录)看成是由无序表和有序表两个部分组成,每趟排序时将无序表中的一个记录插入到有序表中的恰当位置,最终使整个数据表有序排列。 知识回顾 设有一个有序排列的整型顺序线性表 a,任意给定一个元素x,将其插入到线性表a中,使得其依然有序。 list[0]的作用 用于保存待插记录list[i]的值,以免在后移过程中被覆盖而丢失。 作为“监视哨”,防止数组下标越界。 0 1 2 3 4 5 6 7 8 12 20 38 38 46 74 91 12 25 冒泡排序示例----以升序为例 排序过程分析: 第1趟:将第n个到第2个元素和其前面的元素比较,若逆序则进行交换; 第2趟:将第n个到第3个元素和其前面的元素比较,若逆序则进行交换; ………………. 第i趟:将第n个到第i+1个元素和其前面的元素比较,若逆序则进行交换;  课后练习题:

文档评论(0)

1亿VIP精品文档

相关文档