历右子树2中序遍历LDR首先遍历左子树然后访问根结点最后遍历右子树3后序遍历LRD首先遍历左子树然后访问遍历右子树最后访问根结点17查找技术顺序查找的使用情况1线性表为无序表2表采用链式存储结构二分法查找只适用于顺序存储的有序表对于长度为
的有序线性表最坏情况只需比较log2
次18排序技术排序是指将一个无序序列整理成按值非递减顺序排列的有序序列交换类排序法1冒泡排序法需要比较的次数为
122快速排序法插入类排序法1简单插入排序法最坏情况需要
12次比较2希尔排序法最坏情况需要O
15次比较选择类排序法1简单选择排序法最坏情况需要
12次比较2堆排序法最坏情况需要O
log2
次比较
3
f第二章程序设计基础21程序设计设计方法和风格HRBJGD163COM如何形成良好的程序设计风格1源程序文档化2数据说明的方法3语句的结构4输入和输出注释序言性注释和功能性注释语句结构清晰第一效率第二22结构化程序设计结构化程序设计方法的四条原则是1自顶向下2逐步求精3模块化4限制使用goto语句结构化程序的基本结构和特点1顺序结构一种简单的程序设计最基本最常用的结构2选择结构又称分支结构包括简单选择和多分支选择结构可根据条件判断应该选择哪一条分支来执行相应的语句序列3重复结构又称循环结构可根据给定条件判断是否需要重复执行某一相同程序段23面向对象的程序设计面向对象的程序设计以60年代末挪威奥斯陆大学和挪威计算机中心研制的SIMULA语言为标志面向对象方法的优点1与人类习惯的思维方法一致2稳定性好3可重用性好4易于开发大型软件产品5可维护性好对象是面向对象方法中最基本的概念可以用来表示客观世界中的任何实体对象是实体的抽象面向对象的程序设计方法中的对象是系统中用来描述客观事物的一个实体是构成系统的一个基本单位由一组表示其静态特征的属性和它可执行的一组操作组成属性即对象所包含的信息操作描述了对象执行的功能操作也称为方法或服务对象的基本特点1标识惟一性2分类性3多态性4封装性5模块独立性好类是指具有共同属性共同方法的对象的集合所以类是对象的抽象对象是对应类的一个实例消息是一个实例与另一个实例之间传递的信息消息的组成包括1接收消息的对象的名称2消息标识符也称消息名3零个或多个参数继承是指能够直接获得已有的性质和特征而不必重复定义他们继承分单继承和多重继承单继r