Welcome 微信登录

首页 / 软件开发 / 数据结构与算法

数据结构教程 第五课 线性表的类型定义

数据结构教程 第五课 线性表的类型定义

数据结构教程 第五课 线性表的类型定义2007-05-17教学目的: 掌握线性表的概念和类型定义教学重点: 线性表的类型定义教学难点: 线性表的类型定义授课内容:复习:数据结构的种类线性结构的特点:在数据元素的非空有限集中,(1)存在唯一的一个被称做“第一个”的数据元素;(2)存在唯一的一个被称做“最后一个”的数据元素;(3)除第一个之外,集合中的每个数据元素均只有一个前驱;(4)除最后一个之外,集合中每个数...
数据结构教程 第四课 算法效率的度量和存储空间需求

数据结构教程 第四课 算法效率的度量和存储空间需求

数据结构教程 第四课 算法效率的度量和存储空间需求2007-05-17本课主题: 算法效率的度量和存储空间需求教学目的: 掌握算法的渐近时间复杂度和空间复杂度的意义与作用教学重点: 渐近时间复杂度的意义与作用及计算方法教学难点: 渐近时间复杂度的意义授课内容:一、算法效率的度量算法执行的时间是算法优劣和问题规模的函数。评价一个算法的优劣,可以在相同的规模下,考察算法执行时间的长短来进行判断。而一个程序的执行时间通常有两种方法:1、事后统计的方法。缺点:不利...
数据结构教程 第三课 算法及算法设计要求

数据结构教程 第三课 算法及算法设计要求

数据结构教程 第三课 算法及算法设计要求2007-05-17本课主题: 算法及算法设计要求教学目的: 掌握算法的定义及特性,算法设计的要求教学重点: 算法的特性,算法设计要求教学难点: 算法设计的要求授课内容:一、算法的定义及特性1、定义:ispass(int num[4][4]) { int i,j; for(i=0;i<4;i++)for(j=0;j<4;j++) if(num[i][j]!=i*4+j+1)/*一条指令,多个操作*/ret...
数据结构教程 第二课 抽象数据类型的表示与实现

数据结构教程 第二课 抽象数据类型的表示与实现

数据结构教程 第二课 抽象数据类型的表示与实现2007-05-17本课主题: 抽象数据类型的表示与实现教学目的: 了解抽象数据类型的定义、表示和实现方法教学重点: 抽象数据类型表示法、类C语言语法教学难点: 抽象数据类型表示法授课内容:一、抽象数据类型定义(ADT)作用:抽象数据类型可以使我们更容易描述现实世界。例:用线性表描述学生成绩表,用树或图描述遗传关系。定义:一个数学模型以及定义在该模型上的一组操作。关键:使用它的人可以只关心它的逻辑特征,不需要了...
数据结构教程 第一课 数据结构的基本概念和术语

数据结构教程 第一课 数据结构的基本概念和术语

数据结构教程 第一课 数据结构的基本概念和术语2007-05-17本课主题:数据结构的基本概念和术语教学目的:了解数据结构的基本概念,理解常用术语教学重点:基本概念:数据与数据元素教学难点:数据元素间的四种结构关系。授课内容:一、数据、数据元素、数据对象、数据结构的定义1、数据的定义定义一:数据是客观事物的符号表示。学号姓名语文数学C语言6201001张三8554926201002李四9284646201003王五8774736201004...例:张三的...
数据结构教程-序言

数据结构教程-序言

数据结构教程-序言2007-05-17 本站整理 在可视化化程序设计的今天,借助于集成开发环境可以很快地生成程序,程序设计不再是计算机专业人员的专利。很多人认为,只要掌握几种开发工具就可以成为编程高手,其实,这是一种误解。要想成为一个专业的开发人员,至少需要以下三个条件:能够熟练地选择和设计各种数据结构和算法。 至少要能够熟练地掌握一门程序设计语言。 熟知所涉及的相关应用领域的知识。 其中,后两个条件比较容易实现,而第一个条件则需要花相当的时间和精力才能够...
什么是算法

什么是算法

什么是算法2007-05-17什么是程序?程序= 数据结构+ 算法。对于面向对象程序设计,强调的是数据结构,而对于面向过程的程序设计语言如C、P a s c a l、F O RT R A N等语言,主要关注的是算法。掌握算法,也是为面向对象程序设计打下一个扎实的基础。那么,什么是算法呢?人们使用计算机,就是要利用计算机处理各种不同的问题,而要做到这一点,人们就必须事先对各类问题进行分析,确定解决问题的具体方法和步骤,再编制好一组让计算机执行的指令即程序,交...
迭代算法与递归算法的概念及区别

迭代算法与递归算法的概念及区别

迭代算法与递归算法的概念及区别2009-01-25 本站整理 迭代算法是用计算机解决问题的一种基本方法。它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令(或一定步骤)进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值。利用迭代算法解决问题,需要做好以下三个方面的工作:一、确定迭代变量。在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。二、建立迭代关系式。所...
二进制格雷码与自然二进制码的互换

二进制格雷码与自然二进制码的互换

二进制格雷码与自然二进制码的互换2009-01-27 本站整理 游志宇在精确定位控制系统中,为了提高控制精度,准确测量控制对象的位置是十分重要的。目前,检测位置的办法有两种:其一是使用位置传感器,测量到的位移量由变送器经A/D转换成数字量送至系统进行进一步处理。此方法精度高,但在多路、长距离位置监控系统中,由于其成本昂贵,安装困难,因此并不实用;其二是采用光电轴角编码器进行精确位置控制。光电轴角编码器根据其刻度方法及信号输出形式,可分为增量式、绝对式以及混...
N皇后问题摆法算法描述

N皇后问题摆法算法描述

N皇后问题摆法算法描述2009-01-27 本站整理 赵宏伟题目说明:在一个N×N的国际象棋棋盘中摆N个皇后,使这N个皇后不能互相被对方吃掉。题目要求:(1)依次输出各种成功的放置方法。(2)最好能画出棋盘的图形形式,并动态的演示试探过程。(3)程序能方便的移植到其它规格的棋盘上。例如:在一个4×4的棋盘可以摆放的棋位置{(0,1)(1,3)(2,0)(3,2)},{(0,2)(1,0)(2,3)(3,1)}两种。题目分析:一、试探...
模拟退火算法求解TSP问题

模拟退火算法求解TSP问题

模拟退火算法求解TSP问题2009-01-27 vckbase ymhui一、问题描述旅行商问题,即TSP问题(Travelling Salesman Problem)是数学领域中著名问题之一。假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路经的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的路径路程为所有路径之中的最小值。图1 TSP问题的示意图二、遍历算法一个最容易想到的方法是利用排列组合的方法把所有的路径...
九宫问题(八数码)求解过程动态演示

九宫问题(八数码)求解过程动态演示

九宫问题(八数码)求解过程动态演示2009-01-27 vckbase 赵宏伟一、题目说明:(九宫问题)在一个3×3的九宫中有1-8这8个数及一个空格随机的摆放在其中的格子里,如图1-1所示。现在要求实现这个问题:将该九宫格调整为如图1-1右图所示的形式。调整的规则是:每次只能将与空格(上、下、或左、右)相邻的一个数字平移到空格中。试编程实现这一问题的求解。(图1-1)二、题目分析:九宫问题是人工智能中的经典难题之一,问题是在3×3...
字符串近似匹配算法

字符串近似匹配算法

字符串近似匹配算法2009-10-15字符串的近似匹配,就是允许在匹配时有一定的误差,比如在字串“以前高手好久不见”中找“以前是高手”也能成功。具体地说,错误可以有三种类型:加字符(以前也是高手)、漏字符(以前高手)和替换字符(以前石膏手)。下面的函数在text中查找子串pat,最多允许有k个错误。返回的是匹配的终点(我还没想好如何确定起点,呵呵)。至于算法的原理,现在一下子说不清楚,只能说这是一个非确定性有...
在A*寻路中使用二叉堆

在A*寻路中使用二叉堆

在A*寻路中使用二叉堆2009-10-15PanicA*算法中最缓慢的部分就是在开启列表中寻找F值最低的节点或者方格。取决于地图的大小,你可能有十几,成百甚至上千的节点需要在某个时候使用A*搜索。无需多讲,反复搜索这么大的列表会严重拖慢整个过程。然而,这些时间在极大程度上受你存储列表的方式影响。有序和无序的开启列表:简单的方法最简单的方法就是顺序存储每个节点,然后每次需要提取最低耗费元素的时候都遍历整个列表。这提供可快速的插入速度,但是移除速度可能是最慢的...
计算字符串的相似度

计算字符串的相似度

计算字符串的相似度2009-10-15 cnblogs suyang在看完《编程之美》一书的“计算字符串的相似度”一文后,对该书最后提出的问题作一点回忆与思考。这里先将原问题再复述一遍: 原文的问题描述: 许多程序会大量使用字符串。对于不同的字符串,我们希望能够有办法判断其相似程序。我们定义一套操作方法来把两个不相同的字符串变得相同,具体的操作方法为:1.修改一个字符(如把“a”替换为“b&r...
A*寻路初探

A*寻路初探

A*寻路初探2009-10-15译者序很久以前就知道了A*算法,但是从未认真读过相关的文章,也没有看过代码,只是脑子里有个模糊的概念。这次决定从头开始,研究一下这个被人推崇备至的简单方法,作为学习人工智能的开始。这篇文章非常知名,国内应该有不少人翻译过它,我没有查找,觉得翻译本身也是对自身英文水平的锻炼。经过努力,终于完成了文档,也明白的A*算法的原理。毫无疑问,作者用形象的描述,简洁诙谐的语言由浅入深的讲述了这一神奇的算法,相信每个读过的人都会对此有所认...
有关遗传算法

有关遗传算法

有关遗传算法2009-10-15遗传算法(Genetic Algorithm, GA)是近几年发展起来的一种崭新的全局优化算法,它借用了生物遗传学的观点,通过自然选择、遗传、变异等作用机制,实现各个个体的适应性的提高。这一点体现了自然界中"物竞天择、适者生存"的进化过程。1962年Holland教授首次提出了GA算法的思想,从而吸引了大批的研究者,迅速推广到优化、搜索、机器学习等方面,并奠定了坚实的理论基础。用遗传算法解决问题时,首先要...
<< 51 52 53 54 55 56 57 58 59 60 >>