- 3
- 0
- 约1.2万字
- 约 39页
- 2017-08-19 发布于广东
- 举报
第6章 常用算法及其程序实现 本章学习目标 通过前面各章节的学习,读者已基本掌握了Visual Basic.NET代码编写的基础知识。本章通过对一些常用算法的描述和实现,提高读者编程能力。这些算法综合地应用了数组、控制结构、循环结构等方面的语法知识。通过对本章的学习,读者能综合应用各种语法知识来解决实际问题,具备较高的程序设计能力。 常用算法及其程序实现 6.1算法和数据结构 6.2 查找和排序算法 6.3 基本数值算法 6.1算法和数据结构 6.1.2 算法的描述 算法的描述方法可以归纳为以下几种: (1) 自然语言 (2) 图形 图形即流程图、N—S图。流程图采用一组图形符号来表示算法,形式表示算法比较直观,一般在教材中,为了使初学者容易理解算法,常常用流程图来描述算法。 (3) 算法语言 算法语言即伪代码、计算机语言;伪代码不是使用图形符号描述算法,而是用文字和符号描述问题的求解方法和步骤,它是介于自然语言和计算机程序之间的一种表示算法的工具。它书写方便,格式紧凑,清晰易读便于向程序过渡。计算机语言即程序设计语言,是计算机能够接受、理解和执行的算法描述工具。 6.1.3 数据结构的概念 数据结构(Data Structure)指的是数据及数据元素之间的相互关系和运算,即数据的组织形式。 数据结构一般包括以下三方面内容: (1)数据元素之间的逻辑关系,也称数据的逻辑结构(Logical Structure)。 我们分析数据结构都是从结点(其实也就是元素、记录、顶点,虽然在各种情况下所用名字不同,但是说的是同一个概念,在本例中就是1行)之间的关系来分析的。对于这个表中的任何一个记录(结点),它只有一个直接前趋,只有一个直接后继(前趋、后继就是前相邻、后相邻的意思),整个表只有一个开始结点和一个终端结点,那我们知道了这些关系就能明白这个表的逻辑结构了。 (2)数据元素及其关系在计算机存储器内的表示,称为数据的存储结构(Storage Structure)。 表6-1在VisualBasic.NET的存储可以用1个结构体数组来表示。代码如下: 例6-1:表结构数据的存储结构 Public Structure Grade_Information Public IntClassNum As Integer 班级数量 Public IntStudentNum As Integer 学生数量 Public IntStudentTeacher As Integer 教师数量 Public StrLeader As String 年段负责人 End Structure Public school_information(5) As Grade_Information 数组变量school_information就可以表达标6-1的数据结构。Grade_Information结构体中并没有年级字段,这是因为数组的位置可以表达年级。 (3)数据的运算,即对数据施加的操作。 确定了存储结构之后,考虑如何具体实现这些运算。比如对于表6-1的数据结构,我们需要进行查找,增加,修改,删除记录等运算。当决定用例6-1的结构体数组后,我们才考虑这些运算的实现方法。这常常涉及运算的算法问题,对表6-1的有关运算的算法就是数组的检索、插入、删除、更新、排序等实现方法。 6.2 查找和排序算法 6.2.1 查找算法以及程序实现 查找是在大量的信息中寻找一个特定的信息元素,用关键值标识一个数据元素,查找时根据给定的某个值,在表中确定一个关键字的值等于给定值的记录或数据元素。 1)顺序查找 顺序查找也称为线形查找,从数据结构线形表的一端开始,顺序扫描,依次将扫描到的结点关键字与给定值k相比较,若相等则表示查找成功;若扫描结束仍没有找到关键字等于k的结点,表示查找失败。运行界面如图6-1。 查找过程 Sub Search(ByRef a() As Integer, ByVal key As Integer, ByRef index As Integer) Dim i As Integer For i = LBound(a) To UBound(a) If key = a(i) Then index = i 找到了,index形参的值为数组元素所在位置 Exit Sub End If Next i index = -1
您可能关注的文档
- Visual Basic.NET程序设计教程 教学课件 作者 陈志泊 第9章 对话框.ppt
- Visual Basic.NET程序设计教程 教学课件 作者 陈志泊 第10章 Visual Basic.NET面向对象程序设计.ppt
- Visual Basic.NET程序设计教程 教学课件 作者 陈志泊 第11章 文件.ppt
- Visual Basic.NET程序设计教程 教学课件 作者 陈志泊 第12章 Visual Basic.NET图形程序设计.ppt
- Visual Basic.NET程序设计教程 教学课件 作者 陈志泊 第13章 Visual Basic.NET数据库管理应用程序开发.ppt
- Visual Basic.NET程序设计教程 教学课件 作者 陈志泊习题答案 附录 习题参考答案.doc
- Visual Basic.NET程序设计教程 教学课件 作者 王庆桦 主编 战忠丽魏权双 副主编 电子课件 第4章 复合数据类型.ppt
- Visual Basic.NET程序设计教程 教学课件 作者 王庆桦 主编 战忠丽魏权双 副主编 电子课件 第6章 常用控件使用.ppt
- Visual Basic.NET程序设计教程 教学课件 作者 王庆桦 主编 战忠丽魏权双 副主编 电子课件 第12章 综合实例.ppt
- Visual Basic.NET程序设计教程陈语林电子教案 p01.ppt
- 2025至2030中国食品及饲料添加剂行业现状分析及发展潜力研究报告.docx
- 2025-2030中国辅酶Q10行业消费需求分析与未来趋势前景预判研究报告.docx
- 2025至2030中国一次性使用吸引管行业应用规模与供应渠道分析报告.docx
- 2025-2030中国膝关节软骨修复与再生行业市场现状供需分析及投资评估规划分析研究报告.docx
- 2025至2030中国3D打印塑料材料行业细分市场及应用领域与趋势展望研究报告.docx
- 2025至2030中国聚丙烯螺旋盖行业市场深度研究与战略咨询分析报告.docx
- 2025至2030冷轧层压机行业市场占有率及投资前景评估规划报告.docx
- 2025至2030中国基于收费的SaaS在线视频平台行业细分市场及应用领域与趋势展望研究报告.docx
- 2025-2030中国三聚磷酸钠行业运行形势与竞争现状分析研究报告.docx
- 2025至2030中国光谱仪设备及配件行业细分市场及应用领域与趋势展望研究报告.docx
最近下载
- 【精美】药学服务与药患沟通技能讲座PPT课件.pptx VIP
- 风力发电场电气设计.pptx VIP
- 2025年度“六个方面”组织生活会六个方面的对照检查材料.docx VIP
- 【低空经济】市低空经济产业发展行动方案编制.docx VIP
- 11J508 建筑玻璃应用构造-栏板 隔断 地板 吊顶 水下玻璃 挡烟垂壁.pdf VIP
- DB32∕T 2677-2014 公路涉路工程安全影响评价报告编制标准.docx VIP
- 2026中国农业科学院第一批招聘(中国农业科学院农产品加工研究所)考试冲刺试题及答案解析.docx VIP
- 铁路隧道渗漏水病害整治施工方案.doc
- 《电力企业合规管理体系有效性评价指南》编制说明.pdf VIP
- 酒店保洁服务整体投标方案(技术方案).doc
原创力文档

文档评论(0)