东南大学C++课件:折半查找实例与面向对象编程基础

需积分: 14 2 下载量 180 浏览量 更新于2024-08-24 收藏 3.83MB PPT 举报
折半查找是一种高效的搜索算法,它在有序数组或列表中查找特定元素。在这个C++课件的例子中,教授以查找值为21的元素来讲解折半查找的具体步骤。首先,我们来看一下这个查找过程: 1. **序列初始化**: - 提供的序列包含一系列整数,从5到92,有序排列。 2. **折半查找算法**: - 折半查找的核心思想是每次将查找区间缩小一半。开始时,设置初始下标L为数组的起始位置,上界H为结束位置。 - **第一次查找**: - M = INT((L+H)/2) = 3,计算中间位置,由于数组是从5开始的,实际中间位置是(M-1)。 - L=M+1=4,检查中间位置左侧的元素,发现不是21,更新L。 - **第二次查找**: - M = INT((L+H)/2) = 4,中间位置仍然是21的左边界,不满足条件。 - L=1,将下界设为1,继续缩小查找范围。 - **第三次查找**: - M = INT((L+H)/2) = 6,此时找到21,查找结束。 3. **递归调用**: - 如果序列是递增的,每次查找都是通过比较中间元素与目标值的关系,决定是向左还是向右移动查找范围,直到找到目标值或范围缩小到只剩一个元素。 4. **面向对象编程背景**: - 课件涵盖了C++编程的基础知识,包括计算机程序设计概念、C++语言介绍、数据类型、表达式、输入输出、算法控制结构、函数、类与对象等。C++是一门面向对象的语言,课程强调理解面向对象编程思想,如类、对象、构造函数、析构函数等。 5. **章节内容概览**: - 第一章至第五章分别介绍了计算机语言发展、面向对象方法、简单程序设计、函数、类与对象等内容。这些章节不仅教授理论知识,还通过实例让学生掌握如何在实际项目中运用C++进行高效编程。 通过这个例子,学生可以学习到如何在实践中应用折半查找算法,并加深对C++语言及其面向对象特性的理解。此外,课程还注重培养学生的编程能力,包括设计、调试和优化代码,为后续学习打下坚实的基础。