浅谈线性代数与计算机的关系.doc_第1页
浅谈线性代数与计算机的关系.doc_第2页
浅谈线性代数与计算机的关系.doc_第3页
浅谈线性代数与计算机的关系.doc_第4页
浅谈线性代数与计算机的关系.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浅谈高等数学,线性代数与计算机的关系以下是OIer们的各种观点,仅供参考.1、如果程序中要使用算法,高等数学可能用得上。不过一般的程序,还是很难用得上高等数学的。2、高等数学只是基础,一旦你进入数据结构、数据库或其它比较专业的东东,它的基础作用就很明显了!3、其实关键是看你干什么,计算机编程也有很多方面,比如说你要搞图形图象处理建模,就肯定要线形代数方面的知识,但你如果是一般的编程,就不是那么明显。4、思想,逻辑思维对一个程序员太重要了,多少时候,我们都需要在头脑里面把程序运行上几遍,这凭什么?因为程序员有出色的逻辑思维,而这种出色的逻辑思维从何处而来?数学数学还是数学.基础学科锻炼人的基础,没有地基何来高楼大厦,所以,我认为,不管是数学还是离散数学等等的相关东西都要好好学习5、高数的作用:一是培养思维,二是算法分析,三是程序可能本身与高数有关。6、如果你做图象处理的话7、高等数学是一门基础学科,如果没有学过高数,那么看计算方法就可能象看天书似的了。如果你要做一名编程熟练工,可以不学它,否则好好学学吧!8、高数就象是武林高手的内功,虽然不能用来击败对手,但是可以让你的招式更有杀伤力。当然必要的招式还是很重要的,至于象令狐冲那样的只用招式打天下的天才比较少。9、思想,逻辑思维对一个程序员是很重要的,你不能只是学会click,click,click.那样你是没有什么前途的。10、说白了,高等数学是训练你的思维的。如果你是数学系的本科生,考研你可以考除了文学系和新闻系的任何一个科系,为什么?因为你的思维比较能跟得上拍。11、高等数学在一些常用数值计算算法上能用的上,不过在一般的程序上是用不上的。不过小弟我听说高数在解密方面有用,如果你想当黑客就要好好学了,呵呵12、我希望你知道编程只是为了表现你的思维、你的创造力,仅仅是一种表达方式,而数学是你能不断创新的基石。13、数学是所有学科的基础,数学不好,什么都不可能学好,我看过一个报道,有的软件公司根本不要计算机专业的程序员,而是到数学系去找,经过短期的培训他们的编程能力肯定比不注重数学基础的程序员强,现在知道它的利害性了吧,好好学数学吧!14、我认为那得看你是将来拿编程来干什么如果用与科学计算比如火箭发射那种计算那数学和物理差一点都不行如果你是一个应用程序开发者那对数学的要求就不一定高 我在系里数学最差但编程最好这也是中国教育制度的缺陷不能尽展所长我学校里的计算机教学计划还是5年以前制定的学的都是理论 没有实际的东西15、高等数学对编程有何作用?数学是计算机的鼻祖,等你到商业的开发环境,比如做游戏开发,就需要数学基础很深的人工智能了,很多公司就找那些数学系的来做开发,对他们来说,计算机很快就会上首,并且很牛彼得啊,哈哈,好好学吧,freshman建议看计算机编程艺术纯粹的基础算法恐怕是没有什么机会用高数了但是只要是做到音频、视频之类的东西,高数是少不了的16、作为理论功底,在图像/声音图像压缩算法/人工智能/CAD等领域广泛使用微积分作理论研究工具,所以如果你不想只是做做连中专,高中毕业就能做coder,那么请学好高等数学,为以后要走的路做准备17、现在很多人说的编程好,就是说在一个小范围的人群/代码规模/错误率/工程难度下个人的代码风格/写代码速度。就像造房子的砌砖工人一样,说自己每天能比别人多砌几块砖,就以为天下老子最大。方不知造一幢楼最赚钱的是设计院里的人,再者是包工头,这些人对砌砖相去甚远,甚至根本不知。这其中的道理够明了了吧18、当然有用了,并且很有用,你没看大学考计算机的研究生数学都难些,并且很多数学专业的在计算机方面都相当地厉害,除了计算机专业的就是数学专业的。这些不光是逻辑思维能力的培养,还有一些算法等很多方面的问题。19、其实不该问这个问题,数学对编程有如蔬菜对肌肉。你说你吃了这盘菜对你身上的哪块肌肉有好处谁也说不出,但如果你一点蔬菜都不吃,你身上的每块肌肉都会没用。20、其实高等数学还是有一点用处的,不过我建议你学高数的时候,顺便参考一下大学数学系专用的数学分析,此书对逻辑思维有相当帮助。二线性代数在计算机中的应用 线性代数是计算机专业的一门重要基础课程,同时又作为各高等院校和工科类专业的数学基础课程,它具有很强大的应用性和实用性。线性代数是数学的一个分支,它主要处理线性关系问题,它的研究对象是向量、向量空间、线性变换和有限维的线性方程组,向量空间是现代数学的一个重要课题;因而,线性代数被广泛应用于抽象代数和泛函分析中;用过解析几何,线性代数得以被具体表示。线性代数的理论已经被泛化为算子理论。由于科学研究中的非线性模型通常可以被近似为线性模型,使得线性代数被广泛地应用于自然科学和社会科学中。 自计算机产生以来,随着计算机的不断发展和进步,计算机语言也在进步,但是很多软件或编程的编写都离不开计算机算法,这时一种好的计算方法就会成为一个软件或编程的亮点。以前,在计算机的计算算法中,对于一些复杂的计算总是要花很多步骤来完成,既麻烦又容易出错,并很浪费时间(比如在计算机上用算法求鸡兔同笼的问题,如果是用一般算法来求的话,我们会发现很吃力,但是引用的线性代数的矩阵理论就简单的多了),所以在计算效率方面提不上去的话,就会限制计算机的发展和进步。而线性代数的引入就改变了这个问题,使得计算机的发展更加迅猛,到了今天计算机得到广泛应用的时候,计算机数据结构、算法、计算机图形学、计算机辅助设计、密码学、经济学、网络技术、虚拟现实等技术无不是以线性代数为理论基础并组成其计算机算法中极其重要的一部分。线性代数在计算机领域的应用与计算机的计算性能是成正比例的,同时,这一性能会随着计算机硬件的不断创新和发展而得到极大的提升。线性代数的计算机应用在全球有很多的应用,例如Wassily Leontief教授把美国经济用500个变量的500个线性方程组描述,而后又把系统简化为42个变量的42个线性方程。.经过几个月的编程,并利用当时的计算机运行了56个小时才求出其解。又如,1992年至1997年,美国国家科学基金会资助的ATLAST(Augment the Teaching of Linear Algbra using Software Tools)计划重点强调在线性代数教学中应该利用新的计算方法技术。线性代数在计算机方面的应用,促进了计算机的算法计算的发展,同时,计算机的算法进步也为解决线性代数的问题提供了很大的便利(体现为计算机在线性代数中的应用),可以说,在计算机广泛应用的今天,线性代数的计算离不开计算机,运用计算机解决线性代数问题可以让我们充分掌握线性代数的实际应用。在引用计算机计算有关线性代数问题之前,要求解一个线性微分方程组是非常困难的事情,通常要通过找出各个原函数从而把一些相关的积分求出来,但是,在实际情况中,原函数并不是总是存在的,因此总需要数值解来求得结果,而在运用计算机求解之前,数值解要通过人工计算的,这种方法既浪费精力,又会耗费大量的时间。在运用计算机求解线性微分方程组之后,这种耗时费力的情况就得到了很大的改观,计算机能在极短的时间内就可以完成成千上万个算法的计算,因此,计算机在线性代数中的应用,主要是运用计算机程序来求解线性微分方程组。然而,在运用计算机中的程序求解线性微分方程组的时候,实际上是将线性微分方程组化成了许多变元的线性方程。那么,计算机在线性代数中的应用中是怎么样求解线性微分方程组的呢,我们用一个例子来说明:设有一个线性方程:。首先是保存,在计算机上保存好这个方程组,也就是保存这个方程组中每个变元的系数以及等号右边的常数,也就是要保存这个阵列:1 1 100;3 1/3 100要通过程序来计算求解这个方程组,就要对上面保存的这个阵列进行必要的处理。我们可以用一个字母B来表示这个阵列,即是表示成一个矩阵形式:。矩阵是线性代数中的一种术语,在线性代数中,我们都可以用一个字母来表示许多数,特别是当这个“数”的组成很复杂时,就应用的更加广泛了。那么接下来问题就变成了解这个矩阵了,上面的矩阵B被称作是线性方程组的增广矩阵,所以,给定了一个增广矩阵,也就是给定了一个线性方程组。而计算机求解这个矩阵是运用加减法来进行的。 对于矩阵B, 将第一行的每个数都乘上-3以后加到第二行, 也就相当于将第一个方程乘上-3后左右分别加到第二个方程的两边, 这样得到的第二行的第一个数就变成0了, 这样矩阵B就变成。第二行现在对应方程, 那么对此方程两边乘上-3/8, 就可得x2=75, 那么对于计算机的操作来讲, 也就是将第二行的所有数都乘上-3/8, 这样阵列就变成。这对应于线性方程组。那么, 再将上面的方程组中第一个方程减去第二个方程, 就得x1=25, 这对应于将上面的矩阵的第一行的各个元素减去第二行的各个元素, 这样得到矩阵这样, 计算机只要通过将某一行乘某一个数, 或者某一行乘上某一个数加到另一行的这种办法, 经过处理直到右边的两列成为对角线上是1, 其它地方是0, 那么最右边一列就是方程组的解。上面这个例子就是计算机在线性代数中的一个很普遍的计算应用,从而可以知道在一些更为复杂的线性代数计算中,应用计算机程序来求解时,就更加简单了,这样既可以省时又可以省精力。总得来说,线性代数和计算机的关系,是:第一,通过在计算机中应用线性代数的理论等来完成一些复杂的计算,从而应用到各个需要的领域中去;第二,通过计算机的程序来求解线性代数方程组。三 离散数学在计算机科学中的应用首先简单介绍一下离散数学的定义及其在各学科领域的重要作用。离散数学(Discrete mathematics)是研究离散量的结构及其相互关系的数学学科,是现代数学的一个重要分支。它在各学科领域,特别在计算机科学与技术领域有着广泛的应用,同时离散数学也是计算机专业的许多专业课程,如程序设计语言、数据结构、操作系统、编译技术、人工智能、数据库、算法设计与分析、理论计算机科学基础等必不可少的先行课程。通过离散数学的学习,不但可以掌握处理离散结构的描述工具和方法,为后续课程的学习创造条件,而且可以提高抽象思维和严格的逻辑推理能力,为将来参与创新性的研究和开发工作打下坚实的基础。随着信息时代的到来,工业革命时代以微积分为代表的连续数学占主流的地位已经发生了变化,离散数学的重要性逐渐被人们认识。离散数学课程所传授的思想和方法,广泛地体现在计算机科学技术及相关专业的诸领域,从科学计算到信息处理,从理论计算机科学到计算机应用技术,从计算机软件到计算机硬件,从人工智能到认知系统,无不与离散数学密切相关。由于数字电子计算机是一个离散结构,它只能处理离散的或离散化了的数量关系, 因此,无论计算机科学本身,还是与计算机科学及其应用密切相关的现代科学研究领域,都面临着如何对离散结构建立相应的数学模型;又如何将已用连续数量关系建立起来的数学模型离散化,从而可由计算机加以处理。由此可见,离散数学在计算机科学中具有广泛的应用,下面我将一一陈述。1 离散数学在关系数据库中的应用 关系数据库中的数据管理系统向用户提供使用的数据库语言称为数据子语言,它是以关系代数或谓词逻辑中的方法表示。由于用这种数学的方法去表示,使得对这些语言的研究成为对关系代数或逻辑谓词的研究,优化语言的表示变成为对关系代数与谓词逻辑的化简问题。由于引入了数学表示方法,使得关系数据库具有比其它几种数据库较为优越的条件。正因为如此关系数据库迅速发展成为一种很有前途、很有希望的数据库。另外,离散数学中的笛卡儿积是一个纯数学理论,是研究关系数据库的一种重要方法,显示出不可替代的作用。不仅为其提供理论和方法上的支持,更重要的是推动了数据库技术的研究和发展。关系数据模型建立在严格的集合代数的基础上,其数据的逻辑结构是一个由行和列组成的二维表来描述关系数据模型。在研究实体集中的域和域之间的可能关系、表结构的确定与设计、关系操作的数据查询和维护功能的实现、关系分解的无损连接性分析、连接依赖等问题都用到二元关系理论。2 离散数学在数据结构中的应用计算机要解决一个具体问题,必须运用数据结构知识。对于问题中所处理的数据,必须首先从具体问题中抽象出一个适当的数学模型,然后设计一个解此数学模型的算法,最后编出程序,进行测试、调整直至得到问题的最终解答。而寻求数学模型就是数据结构研究的内容。寻求数学模型的实质是分析问题,从中提取操作的对象,并找出这些操作对象之间含有的关系,然后用数学的语言加以描述。数据结构中将操作对象间的关系分为四类:集合、线性结构、树形结构、图状结构或网状结构。数据结构研究的主要内容是数据的逻辑结构,物理存储结构以及基本运算操作。其中逻辑结构和基本运算操作来源于离散数学中的离散结构和算法思考。离散数学中的集合论、关系、图论、树四个章节就反映了数据结构中四大结构的知识。如集合由元素组成,元素可理解为世上的客观事物。关系是集合的元素之间都存在某种关系。例如雇员与其工资之间的关系。图论是有许多现代应用的古老题目。伟大的瑞士数学家列昂哈德欧拉在18 世纪引进了图论的基本思想,他利用图解决了有名的哥尼斯堡七桥问题。还可以用边上带权值的图来解决诸如寻找交通网络里两城市之间最短通路的问题。而树反映对象之间的关系,如组织机构图、家族图、二进制编码都是以树作为模型来讨论。3 离散数学在编译原理中的应用编译程序是计算机的一个十分复杂的系统程序。一个典型的编译程序一般都含有八个部分:词法分析程序、语法分析程序、语义分析程序、中间代码生成程序、代码优化程序、目标代码生成程序、错误检查和处理程序、各种信息表格的管理程序。离散数学里的计算模型章节里就讲了三种类型的计算模型:文法、有限状态机和图灵机。具体知识有语言和文法、带输出的有限状态机、不带输出的有限状态机、语言的识别、图灵机等。短语结构文法根据产生式类型来分类:0 型文法、1 型文法、2 型文法、3 型文法。以上这些在离散数学里讲述到的知识点在编译原理的词法分析及语法分析中都会用到。因此,离散数学也是编译原理的前期基础课程。5 离散数学在人工智能中的应用在人工智能的研究与应用领域中,逻辑推理是人工智能研究中最持久的子领域之一。逻辑是所有数学推理的基础,对人工智能有实际的应用。采用谓词逻辑语言的演绎过程的形式化有助于我们更清楚地理解推理的某些子命题。逻辑规则给出数学语句的准确定义。离散数学中数学推理和布尔代数章节中的知识就为早期的人工智能研究领域打下了良好的数学基础。许多非形式的工作,包括医疗诊断和信息检索都可以和定理证明问题一样加以形式化。因此,在人工智能方法的研究中定理证明是一个极其重要的论题。在这里,推理机就是实现(机器)推理的程序。它既包括通常的逻辑推理,也包括基于产生式的操作。推理机是使用知识库中的知识进行推理而解决问题的。所以推理机也就是专家的思维机制,即专家分析问题、解决问题的方法的一种算法表示和机器实现。6 离散数学在计算机硬件设计中的应用 数字逻辑作为计算机的一个重要理论,在很大程度上起源于离散数学的数理逻辑中的命题与逻辑演算,其在计算机硬件设计中的应用更为突出。利用命题中各关联词的运算规律把又电平表示的各信号之间的运算于二进制数之

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论