㈠ 计算机系学生为什么要学离散数学,离散数学在计算机中的应用有什么
离散数学(Discrete mathematics)是研究离散量的结构及其相互关系的数学学科,是现代数学的一个重要分支。离散的含义是指不同的连接在一起的元素,主要是研究基于离散量的结构和相互间的关系,其对象一般是有限个或可数个元素。离散数学在各学科领域,特别在计算机科学与技术领域有着广泛的应用,同时离散数学也是计算机专业的许多专业课程,如程序设计语言、数据结构、操作系统、编译技术、人工智能、数据库、算法设计与分析、理论计算机科学基础等必不可少的先行课程。通过离散数学的学习,不但可以掌握处理离散结构的描述工具和方法,为后续课程的学习创造条件,而且可以提高抽象思维和严格的逻辑推理能力,为将来参与创新性的研究和开发工作打下坚实的基础。
㈡ 离散数学基本知识
离散数学是数学的几个分支的总称,以研究离散量的结构和相互间的关系为主要目标,其研究对象一般地是有限个或可数无穷个元素;因此它充分描述了计算机科学离散性的特点.内容包含:数理逻辑、集合论、代数结构、图论、组合学、数论等.《离散数学》课程简介 离散数学是计算机专业的一门重要基础课.它所研究的对象是离散数量关系和离散结构数学结构模型.由于数字电子计算机是一个离散结构,它只能处理离散的或离散化了的数量关系,因此,无论计算机科学本身,还是与计算机科学及其应用密切相关的现代科学研究领域,都面临着如何对离散结构建立相应的数学模型;又如何将已用连续数量关系建立起来的数学模型离散化,从而可由计算机加以处理.离散数学课程主要介绍离散数学的各个分支的基本概念、基本理论和基本方法.这些概念、理论以及方法大量地应用在数字电路、编译原理、数据结构、操作系统、数据库系统、算法的分析与设计、人工智能、计算机网络等专业课程中;同时,该课程所提供的训练十分有益于学生概括抽象能力、逻辑思维能力、归纳构造能力的提高,十分有益于学生严谨、完整、规范的科学态度的培养.
离散数学主要包括四个方面逻辑学集合论,代数结构,图论,直接用来解决一些实际的问题的,比较少,因为它是一门计算机专业的理论基础课,解决实际问题,你看哪些方面的问题了,
下面我举一些例子:
1 数据结构,这是计算机专业的一门重量级课程,而离散数学里里面的图论,就是数据结构里面图和树的理论基础!像一些经典的算法,在数据结构里会学到,其实,它们在图论里就被研究得很透!
2.关系数据库,不用说,它的理论基础----关系代数,就是离散数学的一个分支!
3.在计算机网络原理里面,有一些路由选择算法之类 的,像最短路径算法等,都是离散数学里图论的应用,都是一些经典的算法!
4.更深层次的,像人工智能等学科,都是以离散数学做为理论基础的,
所以,离散数学是计算机的一个理论基础,
至于你在编程中解决的问题,那应该是数据结构和算法的应用,因为这门课就是离散数学的理论,加上在计算机上的存储以及操作实现的~~
㈢ 编程过程中经常用到的高中数学知识点。
函数、映射:编程中的很多基本概念就是根据这个建立的。
集合:用计算机解决问题,必须把问题中连续的东西化为离散的,集合知识是必须的。
极限:计算机的最大优势就是可以快速循环计算,因此,把连续问题离散化后,通常需要使用迭代之类的方法,求极限,通过逼近的手段,得到近似答案。用计算机开方或者计算积分等都是这样做的。
其它:看看离散数学或者抽象代数。
㈣ 3、离散数学的思想和知识点对计算机算法设计、程序设计有哪些作用
离散数学课程所传授的思想和方法,广泛地体现在计算机科学技术及相关专业的诸领域,从科学计算到信息处理,从理论计算机科学到计算机应用技术,从计算机软件到计算机硬件,从人工智能到认知系统,无不与离散数学密切相关。由于数字电子计算机是一个离散结构,它只能处理离散的或离散化了的数量关系, 因此,无论计算机科学本身,还是与计算机科学及其应用密切相关的现代科学研究领域,都面临着如何对离散结构建立相应的数学模型;又如何将已用连续数量关系建立起来的数学模型离散化,从而可由计算机加以处理。
㈤ 学编程需要精通数学中的哪些知识
我来说两句,第一,程序其实就是一道一道的数学题,当然,如果你搞的是普通的WEB开发什么的,这些东西都不重要,但是做大型软件和搞科学研究的话,算法对一个程序来说至关重要,举个粒子,对20万个数据进行排序,不同的排序算法的运行时间是不一样的,用最垃圾的算法可能要跑上好几天才能算出来,用好的算法可能几分钟就能搞定,而算法的研究是要有着深厚的数学基础的。
第二,讲一讲应该学哪些数学知识,我是大学生,所以就从大学的角度来讲吧,首先大学里的基础课程高等数学是必须的,这可能对于你写算法来说没有什么太直接的关系,但是,你要记住,高等数学是最基本的东西,里面的很多概念性的东西都是编写程序相关的,是你学其他几门数学课程的基础。第二,线性代数,这们课在工科专业一般都开,很重要,尤其讲到的举矩阵、集合等等,是你以后在程序开发中能直接用到的,而且,线性代数里一些问题的解决方式能很大程度地活跃你的思维。第三,离散数学,离散数学是计算机和软件工程专业必学的课程,和计算机程序直接相关,举例来说,你在设计一条数据库的SQL语句进行联表查询, 你可以直接写上一大串来实现你的查询,但如果你能用离散数学里学到的逻辑推理和范式对你的SQL语句进行简化,那么你的SQL语句查询速度可能会有上百倍的提升。
第四,有兴趣可以学一学组合数学,我也正在看这方面的书,这是研究生的课程之一,但提前学一学还是很有好处的,里面很多结论、推理都会让你受益非浅,学好了这门数学,你的程序质量将上升到另外一个高度。
就说这些吧,总之,学软件开发的人必须要学数学,不但要学,还要学很多。
很多人都在说中国程序员30以后就干不了了,为什么,不是干不了,是干不动了,因为太多的新东西要学,而且学着很费力,为什么,因为基础不好,所以学什么都不行,我想提高自己的数学素质一定会改变这一现状。
不说了,接分!
㈥ 离散数学对计算机编程的帮助有哪些
你说学习它有什么用?那是很显然的。离散数学是专门为计算机而写的,那里面的知识很基础,但对计算机来说是非常重要的。你学习那本书时你会突然明白你以前接触过的计算机知识是如何一回事,我就从中收获了很多,也能让自己明白了很多东西,如学以致用……
再者,你可以通过做里面的习题,能提升你的编程能力:如最好的算法等。而我们要编一个好程序,我们必然要考虑到算法与效率问题。
那里面也还讲了很多数据结构方面的知识,你也可以从中学习到不少。
总之,我觉得这本书很好,值得一学。关键在于你能否把时间安排在里面。
离散数学是计算机基础中的基础,如果你不能把时间安排在它那,你不学也可以,因为你有了.net等一些知识,可以从数据结构与算法这些方面补足那些知识。
㈦ 编程所涉及到的数学
答案1:不止涉及到离散数学,但是一般不会涉及到微积分
答案2:离散数学不需要什么基础,完全不需要高数的微积分,离散数学实际很简单的,你只要跟着老师认真学,应该是不会有问题
答案3:
(1)编程最重要的是亲手去编写代码,有很多时候你知道这个问题需要用什么思路去解决,但是你用编程来实现你的思路却很费劲。因为你有了思路,只是有了个方向,你不可能方方面面都考虑到。只有亲自去写,才能掌握编程的技巧。你能看懂别人的程序,但是如果你不亲自去打一边的话,别人的永远是别人的。
(2)程序都是一点点编出来的,别看有的程序很长,其实一句句写,你也能做到。
(3)工作后你会发现,编程与其说是脑力劳动,更像是体力劳动
㈧ 计算机编程涉及数学的什么知识点
数学跟计算机的关系非常密切
这其中主要的联系就是 逻辑思维
举例:与或非(简单命题 高一)
数学中的函数与计算机的函数有相似的表述
但从实际应用来说 计算机编程的函数比数学的范围更广
这是必然的 因为计算机函数包括了绝大多数数学函数
除此之外 还可以做命令操作
举例:y=f(x)
计算机编程中可以把 对应法则f 做成 DeleteFile(删除一个文件);
x 做成参数 文件名
而得到的结果给y 那么y就是布尔类型 是否成功删除~~
至于楼上所说 数学在数据结构中的体现嘛~~
我还读高中 还没发现什么~~ 不过我想有是一定的
他们的区别在于应用性
数学着重于运算 计算机着重于帮助运算 而现在计算机主要应用在 操作和应用~~
总之 数学、物理都是计算机的基础 没有这两科 计算机这东西也不复存在了
㈨ 编程所需要的数学知识
计数的能力: for循环中经常用, 小学生都会。
数字的加减乘除 : 每种编程语言都会内置支持, 都不需要你自己算
余数和模: 偶尔会用得到
集合运算: 交集、并集、差集 , 编程中用的不多。
布尔运算: AND , OR, 非
各种进制: 二进制、十进制、十六进制
还有哪些? 我想不起来了, 欢迎补充。
当然这和我从事的编程领域有极大关系, 如果我做的不是Web开发, 而是搜索,游戏, 安全,算法,人工智能等, 那对数学的要求估计就开始飙升了。
其实计算机的基础是数学, 只是我们一直在应用层编程, 体会不到罢了。
比如说我们日常使用的计算机,绝大部分都是所谓冯诺依曼结构(参见文章《冯·冯诺依曼计算机的诞生》) ,这个结构可以说是图灵机这个概念机器的具体实现,而图灵机就是一个纯数学的东西啊 ,没有图灵机这么伟大的抽象作为数学基础, 现代的计算机是制造不出来的。
再比如说密码领域需要很多数论的知识,RSA算法就涉及到大素数的分解;
我们常用的Mysql, Oracle 等关系数据库的底层基础是离散数学的笛卡尔乘积;
通信系统中很重要的一个原理就是傅里叶变换。
编译器会用到有限状态机;
数据的压缩会用到各种数学的算法;
项目管理中的进度管理,甘特图数学基础就是图论。