2015年全国计算机等级考试二级公共基础知识总结
- 格式:doc
- 大小:218.00 KB
- 文档页数:13
计算机二级公共基础知识计算机二级公共基础知识计算机二级公共基础知识是计算机相关专业的考试科目之一,涵盖了计算机的基础概念、硬件和软件知识、网络与互联网等方面的内容。
本文将从计算机的基本原理、计算机硬件、计算机软件和网络与互联网等四个方面介绍计算机二级公共基础知识。
一、计算机的基本原理计算机是一台按照一定的程序运行的机器,它能够接收、处理、存储和输出数据。
其基本原理包括数据的输入和输出、数据的运算处理、程序的控制和数据的存储等。
1. 数据的输入和输出:计算机通过输入设备(键盘、鼠标等)接收用户输入的数据,经过处理后通过输出设备(显示器、打印机等)将结果输出给用户。
2. 数据的运算处理:计算机可以执行各种算术和逻辑运算操作,包括加减乘除、比较、逻辑运算等。
3. 程序的控制:计算机按照事先编写好的程序来执行任务,程序由一系列指令组成,计算机按照指令的顺序依次执行。
4. 数据的存储:计算机内部有各种存储器件,包括内存、硬盘、光盘等,用于存储数据、程序和中间结果。
二、计算机硬件计算机硬件是计算机体系结构的物理实现,包括中央处理器(CPU)、内存、输入输出设备等。
1. 中央处理器(CPU):是计算机的核心部件,负责执行指令、控制和协调各个硬件设备的工作。
2. 内存(RAM):用于存储正在运行的程序和数据,是计算机的临时存储器,其大小决定了计算机可以同时处理的数据量。
3. 输入输出设备:包括键盘、鼠标、打印机、显示器等,用于与计算机进行交互。
4. 存储设备:包括硬盘、光盘、U盘等,用于长期存储数据和程序。
三、计算机软件计算机软件是计算机能够运行的程序和数据的集合,分为系统软件和应用软件两类。
1. 系统软件:包括操作系统(如Windows、Mac OS)和一些常用的工具软件(如浏览器、图像处理软件),用于管理计算机的硬件资源和提供基本的功能。
2. 应用软件:包括办公软件、设计软件、编程软件等,用于满足用户特定的需求。
第一章数据结构与算法经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是算法复杂度、数据结构的概念、栈、二叉树的遍历、二分法查找,读者应对此部分进行重点学习。
详细重点学习知识点:1.算法的概念、算法时间复杂度及空间复杂度的概念2.数据结构的定义、数据逻辑结构及物理结构的定义3.栈的定义及其运算、线性链表的存储方式4.树与二叉树的概念、二叉树的基本性质、完全二叉树的概念、二叉树的遍历5.二分查找法6.冒泡排序法1.1算法考点1 算法的基本概念考试链接:考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现,分值为2分,此考点为识记内容,读者还应该了解算法中对数据的基本运算。
计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。
1.算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
2.算法的基本要素:(1)算法中对数据的运算和操作一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构。
在一般的计算机系统中,基本的运算和操作有以下4类:算术运算、逻辑运算、关系运算和数据传输。
(2)算法的控制结构:算法中各操作之间的执行顺序称为算法的控制结构。
描述算法的工具通常有传统流程图、N-S结构化流程图、算法描述语言等。
一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成。
考点2 算法复杂度考试链接:考点2在笔试考试中,是一个经常考查的内容,在笔试考试中出现的几率为70%,主要是以选择的形式出现,分值为2分,此考点为重点识记内容,读者还应该识记算法时间复杂度及空间复杂度的概念。
1.算法的时间复杂度算法的时间复杂度是指执行算法所需要的计算工作量。
同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均不同。
这表明使用绝对的时间单位衡量算法的效率是不合适的。
撇开这些与计算机硬件、软件有关的因素,可以认为一个特定算法"运行工作量"的大小,只依赖于问题的规模(通常用整数n表示),它是问题规模的函数。
计算机二级公共基础知识计算机二级公共基础知识是指计算机技术的一些基本概念、原理和常见的应用知识。
这些知识是计算机相关专业的学习和实践的基础,对于提高计算机运用与维护的能力具有重要的作用。
下面将介绍计算机二级公共基础知识的主要内容。
1.计算机硬件计算机硬件是计算机系统的物理组成部分,它包括中央处理器(CPU)、内存、硬盘、显示器、键盘、鼠标等。
这些硬件设备协同工作,实现计算、存储和输出等功能。
2.计算机操作系统计算机操作系统是计算机系统的核心软件,它负责管理计算机的硬件和软件资源,提供用户与计算机系统之间的接口。
常见的操作系统有Windows、macOS、Linux等。
3.计算机网络计算机网络是指多台计算机通过通信设备相互连接起来,共享资源和信息的系统。
计算机网络可以实现远程访问、文件传输、共享打印机等功能。
常见的网络协议有TCP/IP、HTTP、FTP等。
4.数据库和SQL数据库是用于存储和管理大量数据的软件系统。
SQL(Structured Query Language)是一种用于管理数据库的语言,它可以用于查询、更新、删除和插入数据等操作。
5.程序设计与开发程序设计是指通过编写代码实现特定功能的过程。
常见的编程语言有C、C++、Java、Python等。
开发环境包括编译器、集成开发环境(IDE)等工具。
6.算法和数据结构算法是解决问题的方法和步骤的描述,它是程序设计的核心。
数据结构是组织和存储数据的方式,常见的数据结构有数组、链表、栈、队列、树和图等。
7.计算机安全和网络安全计算机安全是保护计算机系统和信息不受未授权的访问、使用、披露、破坏等威胁的过程。
网络安全是保护计算机网络和通信系统免受网络攻击、恶意软件和数据泄露等威胁。
8.计算机维护与故障排除计算机维护是指对计算机系统和网络进行定期检查、维修和升级的过程。
故障排除是解决计算机硬件和软件故障的过程,包括诊断、修复和预防故障等。
这些是计算机二级公共基础知识的主要内容,掌握了这些知识可以帮助我们更好地理解计算机技术,并提高计算机应用与维护的能力。
二级公共基础知识总结(30分:10选择+5填空)复习及应试建议:1.考生的复习必须遵守:“ 80/20的原则”二级考试的公共知识部分的覆盖面广,至少涵盖了计算机应用专业的四门核心课程:算法及数据结构、程序设计基础、软件工程基础和数据库。
事实上,这些课程本身的涉及面就很广,难度系数较大。
因此,这些课程甚至也是计算机专业学生最头疼的课程,对大多数考生来说其难度之大不言而喻。
所以,考生应把80%的时间用在20%勺重点知识点上,争取用20%勺重点知识点来答对 80%勺考题,这是考生复习二级考试的公共知识部分的总体思路。
2.复习的关键是考生必须准确判断和掌握常见考点考生必须能够准确判断和掌握常见考点,例如:算法部分主要考查算法的概念及算法的复杂度;数据结构部分主要考查最基本的概念、最典型的数据结构和最常见的操作;程序设计部分主要考查程序设计风格的基本要求、结构化程序设计的最基本知识和面向对象程序设计的最常见概念;软件工程基础部分主要考查软件工程的基本概念及软件生命周期的各个阶段的基础知识;数据库基础部分主要考查数据库基本概念、数据模型、关系代数基础知识、数据库设计方法和步骤。
对常见考点的准确把握会使考生避免盲目学习,从而能够轻松面对考试。
二级考试中要求的知识点都是最基本的、最简单的,真正需要“灵活”掌握的考点极少。
很多考生在考试过程中可能已经发现,该部分的题目“会做就是不懂”。
所以建议在复习过程中不要急于“灵活”,其实等到把基本的知识点掌握后自然就“灵活”了。
公共知识部分仅占30%分,题目相对简单。
因此,在答题过程中,这部分要争取速度快、准确度高。
总的原则是如果一道题在两分钟没有任何思路,就应该跳过此题,把时间给后面的题目。
记住:二级考试是一种合格考试,不是竞赛,及格就行了。
公共基础的复习没有技巧,就是背诵、背诵、再背诵,就是要把这10页纸背下来。
划线字体是至关重要的部分,框起来的字体为填空题的常考词汇,一定要背熟牢记,这里面有100分里30分的原题。
目录第1章数据结构与算法1.1算法1.2数据结构的基本概念1.3栈及线性链表1.4树与二叉树1.5查找技术1.6排序技术1.7 例题详解第2章程序设计基础2.1结构化程序设计2.2面向对象的程序设计2.3 例题详解第3章软件工程基础3.1软件工程基本概念3.2结构化设计方法3.3软件测试3.4软件的调试3.5 例题详解第4章数据库设计基础4.1数据库系统的基本概念4.2数据模型4.3关系代数4.4数据库设计与管理4.5 例题详解第1章数据结构与算法经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是算法复杂度、数据结构的概念、栈、二叉树的遍历、二分法查找,读者应对此部分进行重点学习。
详细重点学习知识点:1.算法的概念、算法时间复杂度及空间复杂度的概念2.数据结构的定义、数据逻辑结构及物理结构的定义3.栈的定义及其运算、线性链表的存储方式4.树与二叉树的概念、二叉树的基本性质、完全二叉树的概念、二叉树的遍历5.二分查找法6.冒泡排序法1.1算法考点1 算法的基本概念考试链接:考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现,分值为2分,此考点为识记内容,读者还应该了解算法中对数据的基本运算。
计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。
1.算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
2.算法的基本要素:(1)算法中对数据的运算和操作一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构。
在一般的计算机系统中,基本的运算和操作有以下4类:算术运算、逻辑运算、关系运算和数据传输。
(2)算法的控制结构:算法中各操作之间的执行顺序称为算法的控制结构。
描述算法的工具通常有传统流程图、N-S结构化流程图、算法描述语言等。
一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成。
考点2 算法复杂度考试链接:考点2在笔试考试中,是一个经常考查的内容,在笔试考试中出现的几率为70%,主要是以选择的形式出现,分值为2分,此考点为重点识记内容,读者还应该识记算法时间复杂度及空间复杂度的概念。
计算机二级考试公共基础知识是计算机二级考试的一部分,主要考察考生对计算机基础知识的掌握情况,下面是一些常见的考点和知识点:
1. 计算机基础知识:包括计算机的硬件组成、计算机的工作原理、操作系统的基本概念、常见的应用软件以及网络基础知识等方面的内容。
2. 计算机操作系统:包括常见的计算机操作系统和其特点、操作系统的安装和配置以及文件管理、进程管理、内存管理等方面的内容。
3. 网络基础知识:包括计算机网络的基本概念、网络拓扑结构、常用网络协议、IP地址的分类和子网划分、TCP/IP协议的基本原理以及网络安全等方面的内容。
4. 数据库基础知识:包括数据模型的基本概念、关系模型、SQL语言的基本语法、数据库的设计与实现以及数据备份与恢复等方面的内容。
5. 程序设计基础知识:包括常见的编程语言、程序设计的基本思路与方法、程序设计的基本流程以及程序的调试和测试
等方面的内容。
6. 办公自动化软件:包括文字处理软件、电子表格软件和演示文稿软件的基本概念、常用功能和使用方法。
7. 计算机安全基础知识:包括计算机病毒的种类和防范方法、网络攻击的方式和防范方法、数据安全和隐私保护等方面的内容。
以上仅是计算机二级考试公共基础知识的一些常见考点和知识要点,实际考试中还可能涉及其他方面的内容。
考生在备考时应该根据具体情况,选择适合自己的学习和练习方式,并且要多做真题和模拟题,加强对知识点的掌握和理解,提高考试的准确性和速度。
计算机二级公共基础知识完整计算机二级公共基础知识是计算机考试中的一项重要科目,涵盖了计算机基础知识的各个方面。
通过学习和掌握这些基础知识,可以帮助我们更好地理解计算机的原理和运作方式。
在计算机二级公共基础知识中,我们首先需要了解计算机的硬件组成。
计算机由中央处理器(CPU)、内存、硬盘、输入输出设备等多个部件组成。
中央处理器是计算机的核心部件,负责执行程序和进行运算。
内存是存储数据和程序的地方,硬盘则是长期存储数据的设备。
输入输出设备包括键盘、鼠标、显示器等,用于与计算机进行交互。
除了硬件组成,我们还需要了解计算机的操作系统。
操作系统是计算机的核心软件,负责管理计算机的资源和控制程序的执行。
常见的操作系统有Windows、Linux、Mac OS等。
学习计算机二级公共基础知识时,我们需要了解操作系统的基本功能和使用方法,比如文件管理、进程管理、网络管理等。
在计算机二级公共基础知识中,还包括网络基础知识。
网络是将多台计算机连接起来,实现信息共享和通信的技术。
我们需要了解网络的基本概念,比如IP地址、子网掩码、网关等。
同时,还需要了解网络的协议和常用的网络设备,比如路由器、交换机等。
计算机二级公共基础知识还包括数据库的基本知识。
数据库是用于存储和管理数据的软件系统。
我们需要了解数据库的基本概念,比如表、字段、记录等。
同时,还需要了解SQL语言的基本语法和常用的数据库管理系统,比如MySQL、Oracle等。
在学习计算机二级公共基础知识时,我们还需要了解计算机的安全知识。
计算机安全是保护计算机和网络不受恶意攻击和威胁的重要方面。
我们需要了解计算机病毒、木马、网络钓鱼等常见的安全威胁,以及如何防范和应对这些威胁。
计算机二级公共基础知识涵盖了计算机的硬件、操作系统、网络、数据库和安全等多个方面。
通过学习和掌握这些知识,我们可以更好地理解计算机的工作原理和运行机制,提高计算机的使用能力和安全意识。
希望大家能够认真学习和掌握这些知识,为将来的工作和学习打下坚实的基础。
计算机系统二级公共基础知识1.计算机硬件知识:计算机硬件是计算机系统的物理组成部分,包括中央处理器(CPU)、内存(RAM)、硬盘、显卡、主板等。
在计算机系统二级公共基础知识考试中,通常会涉及到计算机硬件的基本概念、原理和工作方式,例如CPU的指令执行流程、内存的存储结构和访问速度等。
此外,还需要了解计算机硬件的选型和购买、组装与维护等方面的知识。
2.操作系统知识:操作系统是计算机系统的核心软件,负责管理和控制计算机的硬件资源,提供用户界面和各种系统服务。
在计算机系统二级公共基础知识考试中,通常会涉及到操作系统的原理和功能,如进程管理、文件系统、内存管理等。
此外,还需要了解不同操作系统的特点和应用场景,例如Windows、Linux和Mac OS等。
3.网络基础知识:网络是计算机系统之间连接和交流的基础设施,包括局域网(LAN)、广域网(WAN)以及互联网等。
在计算机系统二级公共基础知识考试中,通常会涉及到网络的基本概念、协议和技术,例如TCP/IP协议、路由器、交换机等。
此外,还需要了解计算机网络的组网方式和安全策略,以及网络故障的排除和维护等方面的知识。
此外,还有一些其他知识点也常常在计算机系统二级公共基础知识考试中出现,例如数据库基础知识、编程语言基础、软件工程等。
这些知识点在计算机系统的应用和开发过程中起着重要的作用,对于提高计算机系统的效率和可靠性具有重要意义。
总之,计算机系统二级公共基础知识是计算机专业二级职业资格的一门重要科目,涵盖了计算机硬件、操作系统、网络基础等方面的知识。
通过学习和掌握这些知识,可以提高计算机系统的性能和可靠性,为计算机系统的应用和开发提供基础支持。
全国计算机等级考试二级教程——公共基础知识一、操作系统基础知识1.操作系统是什么?请简要说明其作用和功能。
操作系统是计算机系统中的一种软件,它负责管理和控制计算机硬件资源,并为用户程序提供运行环境。
其主要功能包括进程管理、内存管理、文件系统管理和设备管理等。
2.请列举几种常见的操作系统。
常见的操作系统包括Windows、Linux、Mac OS、Android等。
3.什么是进程?什么是线程?进程是正在执行的程序的实例,是操作系统资源分配与调度的基本单位。
线程是进程中的一个执行单元,一个进程可以包含多个线程。
4.什么是文件系统?文件系统是一种组织和管理计算机存储设备上数据的方法,用于存储和检索文件,并提供对文件的访问控制和保护。
二、计算机网络基础知识1.什么是IP地址?IP地址的作用是什么?IP地址是因特网协议(IP)的网络接口的标识,用于唯一地标识和定位网络上的计算机设备。
IP地址的作用是用于在数据通信中确定源和目标的地址。
2. 请简述Internet的结构。
Internet的结构是由成千上万个相互连接的计算机网络组成的,形成一个全球性的网络。
它使用一种称为互联网协议(IP)的通信协议进行数据传输,通过路由器相互连接。
3.什么是HTTP协议?HTTP协议有哪些特点?HTTP协议(Hypertext Transfer Protocol)是一种用于从服务器传输超文本到客户端的协议。
它的特点包括无连接性、无状态性和可扩展性。
三、数据库基础知识1.什么是数据库?数据库的作用是什么?数据库是存储、管理和组织数据的集合,它提供了一种结构化的方式来组织和存储数据,以便于数据的存取和处理。
数据库的作用是存储和管理大量的数据,并为用户提供数据查找、插入、更新和删除等功能。
2.请简述关系数据库的特点和优点。
关系数据库是一种以关系为基础的数据模型。
它的特点包括数据的结构化、数据间的关系建立、数据的操作和约束等。
关系数据库的优点是数据的一致性、数据的可扩展性、数据的安全性和数据的完整性。
计算机二级公共基础知识
计算机二级公共基础知识主要包括以下内容:
1. 计算机的基本知识:了解计算机的发展历史、计算机的
基本组成部分、计算机的工作原理、计算机的分类等基本
概念。
2. 计算机硬件知识:了解硬件的基本组成,包括CPU、内存、硬盘、显卡、主板等各个硬件的作用和工作原理。
3. 计算机操作系统知识:了解各种操作系统的特点和功能,如Windows、macOS、Linux等,以及了解操作系统的基本操作和管理。
4. 计算机网络知识:了解计算机网络的基本概念,包括局
域网、广域网、互联网等,了解网络的基本组成和通信原理,了解常用的网络协议和网络安全知识。
5. 数据库知识:了解数据库的基本概念和常用数据库管理
系统,了解数据库的设计和管理,了解SQL语言。
6. 编程语言知识:了解常见的编程语言,如C、C++、Java、等,了解编程的基本原理和常用的编程技巧。
7. 软件开发知识:了解软件开发的基本流程和常用的开发
工具,了解软件测试和调试的方法。
8. 多媒体技术知识:了解音频、视频和图像的基本原理和处理技术,了解多媒体数据的压缩和解压缩方法。
9. 信息安全知识:了解常见的网络攻击和防御方法,了解数据加密和解密技术,了解网络安全管理和安全策略。
10. 计算机应用知识:了解常见的办公软件和应用软件的使用方法,包括文字处理、表格处理、图形图像处理、网页设计等。
,计算机二级公共基础知识是对计算机硬件、操作系统、网络、数据库、编程语言、软件开发、多媒体技术、信息安全和计算机应用等方面的基本知识的掌握和了解。
这些知识对于计算机应用和专业技术的学习和工作有着重要的基础作用。
2015年全国计算机二级等级考试公共基础部分 2015年全国计算机等级考试二级基础知识总结
1.1 算法 算法:是解题方案的准确而完整的描述。通俗地说,算法就是计算机解题的过程。算法不等于程序,也不等于计算方法,程序的编制不可能优于算法的设计。
(1)确定性,算法中每一步骤都必须有明确定义,不允许有模棱两可的解释,不允许有多义性; (2)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止; (3)可行性,算法原则上能够精确地执行; (4)拥有足够的情报。 算法效率的度量—算法复杂度:算法时间复杂度和算法空间复杂度。★★★
算法时间复杂度:指执行算法所需要的计算工作量。即算法执行过程中所需要的基本运算次数。
算法空间复杂度:指执行这个算法所需要的内存空间。 1.2 数据结构的基本概念 数据结构:指相互有关联的数据元素的集合。 数据结构研究的三个方面: (1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构; (2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构; (3)对各种数据结构进行的运算。 线性结构的条件,(一个非空数据结构): (1)有且只有一个根结点; (2)每一个结点最多有一个前件,也最多有一个后件。 非线性结构:不满足线性结构条件的数据结构。
1.3 线性表及其顺序存储结构 线性表的顺序存储结构具有以下两个基本特点: (1)线性表中所有元素所占的存储空间是连续的; (2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。 顺序表的运算:查找、插入、删除。
1.4线性链表 数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。 结点由两部分组成: (1) 用于存储数据元素值,称为数据域; 2015年全国计算机二级等级考试公共基础部分 (2) 用于存放指针,称为指针域,用于指向前一个或后一个结点。 在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。 链式存储方式即可用于表示线性结构,也可用于表示非线性结构。 线性链表的基本运算:查找、插入、删除。
1.5栈和队列★★★★
栈:限定在一端进行插入与删除的线性表。 其允许插入与删除的一端称为栈顶,用指针top表示栈顶位置。 不允许插入与删除的另一端称为栈底,用指针bottom表示栈底。 栈按照“先进后出”(FILO)或“后进先出”(LIFO)组织数据,栈具有记忆作用。 栈的存储方式有顺序存储和链式存储。 栈的基本运算: (1) 入栈运算,在栈顶位置插入元素; (2) 退栈运算,删除元素(取出栈顶元素并赋给一个指定的变量); (3) 读栈顶元素,将栈顶元素赋给一个指定的变量,此时指针无变化。 队列:指允许在一端(队尾)进入插入,而在另一端(队头)进行删除的线性表。
用rear指针指向队尾,用front指针指向队头元素的前一个位置。 队列是“先进先出”(FIFO)或“后进后出”(LILO)的线性表。 队列运算: (1) 入队运算:从队尾插入一个元素; (2) 退队运算:从队头删除一个元素; 计算循环队列的元素个数: “尾指针减头指针”,若为负数,再加其容量即可。 即: 当 尾指针-头指针>0 时,尾指针-头指针 2015年全国计算机二级等级考试公共基础部分 当 尾指针-头指针<0 时,尾指针-头指针+容量 计算栈的个数: 栈底 –栈顶 +1
1.6 树与二叉树 ★★★★★ 1、树的基本概念 树是一种简单的非线性结构,其所有元素之间具有明显的层次特性。 在树结构中,每一个结点只有一个前件,称为父结点。 没有前件的结点只有一个,称为树的根结点,简称树的根。 每一个结点可以有多个后件,称为该结点的子结点。没有后件的结点称为叶子结点。 在树结构中,一个结点所拥有的后件的个数称为该结点的度。 所有结点中最大的度称为树的度。 树的最大层次称为树的深度。
2、二叉树及其基本性质 满足下列两个特点的树,即为二叉树 (1) 非空二叉树只有一个根结点; (2) 每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。
二叉树基本性质:★★★★ 2015年全国计算机二级等级考试公共基础部分 性质1 在二叉树的第k层上,最多有 个结点。 性质2 深度为m的二叉树最多有个 个结点。 性质3 在任意一棵二叉树中,度数为0的结点(即叶子结点)总比度为2的结点多一个。
性质4 具有n个结点的二叉树,其深度至少为 ,其中 表示取 的整数部分 3、满二叉树与完全二叉树 满二叉树:除最后一层外,每一层上的所有结点都有两个子结点。 完全二叉树:除最后一层外,每一层上的结点数均达到最大值;在最后一层上只缺少右边的若干结点。 下图a表示的是满二叉树,下图b表示的是完全二叉树:
4、二叉树的遍历 ★★★★ 二叉树的遍历是指不重复地访问二叉树中的所有结点。二叉树的遍历可以分为以下三种: (1)前序遍历(DLR):若二叉树为空,则结束返回。否则:首先访问根结点,然后遍历左子树,最后遍历右子树;并且,在遍历左右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。 (2)中序遍历(LDR):若二叉树为空,则结束返回。否则:首先遍历左子树,然后访问根结点,最后遍历右子树;并且,在遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。 (3)后序遍历(LRD):若二叉树为空,则结束返回。否则:首先遍历左子树,然后遍历右子树,最后访问根结点,并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点. 2015年全国计算机二级等级考试公共基础部分 该二叉树前序遍历为:F C A D B E G H P 该二叉树中序遍历为:A C B D F E H G P 该二叉树后序遍历为:A B D C H P G E F
1.7 查找技术 查找:根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素。 查找结果:(查找成功:找到;查找不成功:没找到。) 平均查找长度:查找过程中关键字和给定值比较的平均次数。 查找分为: 顺序查找 二分法查找对于长度为n的有序线性表,最坏情况只需比较
次,而顺序查找需要比较n次。
1.8 排序技术 排序是指将一个无序序列整理成按值非递减顺序排列的有序序列。 1、交换类排序法(冒泡排序,快速排序) 2、插入类排序法(简单插入排序,希尔排序) 3、选择类排序法(简单选择排序,堆排序) 冒泡排序法,快速排序法,简单插入排序法,简单选择排序法,最坏需要比较的次数为n(n-1)/2
希尔排序,最坏需要比较的次数为 堆排序,最坏需要比较的次数为 2.1 程序设计设计方法和风格 "清晰第一、效率第二"已成为当今主导的程序设计风格。 形成良好的程序设计风格需注意: 1、源程序文档化; 2、数据说明的方法; 3、语句的结构; 4、输入和输出。 注释分序言性注释和功能性注释。 语句结构清晰第一、效率第二。
2.2 结构化程序设计 结构化程序设计方法的四条原则是: 1、自顶向下; 2、逐步求精; 3、模块化; 4、限制使用goto语句。 结构化程序的基本结构及特点: (1)顺序结构:一种简单的程序设计,最基本、最常用的结构; (2)选择结构:又称分支结构,包括简单选择和多分支选择结构,可根据条件,判断应该选择哪一条分支来执行相应的语句序列; (3)循环结构:又称重复结构,可根据给定条件,判断是否需要重复执行某一相同或类2015年全国计算机二级等级考试公共基础部分 似的程序段。 结构化程序设计的特点:只有一个入口和出口 2.3 面向对象的程序设计 面向对象方法的优点: (1)与人类习惯的思维方法一致; (2)稳定性好; (3)可重用性好; (4)易于开发大型软件产品; (5)可维护性好。 对象是面向对象方法中最基本的概念,可以用来表示客观世界中的任何实体,对象是实体的抽象。 面向对象的程序设计方法中,对象是由数据的容许的操作组成的封装体,是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组操作组成。 操作描述了对象执行的功能,是对象的动态属性,操作也称为方法或服务。 对象的基本特点: (1)标识惟一性; (2)分类性; (3)多态性; (4)封装性; (5)模块独立性好。 类是指具有共同属性、共同方法的对象的集合。类是关于对象性质的描述。类是对象的抽象,对象是其对应类的一个实例。 消息是一个实例与另一个实例之间传递的信息。对象间的通信靠消息传递。它请求对象执行某一处理或回答某一要求的信息,它统一了数据流和控制流。 继承是使用已有的类定义作为基础建立新类的定义技术,广义指能够直接获得已有的性质和特征,而不必重复定义他们。 继承具有传递性,一个类实际上继承了他上层的全部基类的特性。 继承分单继承和多重继承。 多态性是指同样的消息被不同的对象接受时可导致完全不同的行动的现象。 3.1 软件工程基本概念 1、软件的相关概念 计算机软件是包括程序、数据及相关文档的完整集合。 软件的特点包括:1)软件是一种逻辑实体,而不是物理实体,具有抽象性;2)软件的生产与硬件不同,它没有明显的制作过程;3)软件在运行、使用期间不存在磨损、老化问题;4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;5)软件复杂性高,成本昂贵;6)软件开发涉及诸多的社会因素。
2、软件危机与软件工程 软件工程源自软件危机。所谓软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 软件工程的主要思想是将工程化原则运用到软件开发过程,它包括3个要素:方法、工具和过程。方法是完成软件工程项目的技术手段;工具是支持软件的开发、管理、文档生成;