`
clamp
  • 浏览: 91992 次
社区版块
存档分类
最新评论

数学和软件(续)

阅读更多
看来大家对数学还是很有兴趣,但我还是很遗憾的看到大多数人对数学和软件开发的理解还是数学算法这个层面。

那么我继续尽我所能来揭示数学和软件两者思考的共通性。

这次考虑的是重构,要点之一是不要重复,因此需要找出几段代码之间的共同点。

从数学角度考察两个多项式
x^2-5x-6和x^2+4x+3
哪一部分是重复的呢?

从表象上看似乎是x^2,但是深入的考察发现两者可以被改写为以下的形式
(x-6)(x+1)和(x+1)(x+3)
那么x+1也是一个共同点,而且从数学直观上来讲,x+1是更“简洁”的共同点。

如何从各类形式上类似甚至形式上不类似的代码中发现其“本质”的共同点,是需要一点洞察力的,也可以称为“嗅觉”。
而代数方面的数学训练则有助于培养这种“嗅觉”。





分享到:
评论
1 楼 huxp 2007-04-03  
基本同意.但我觉得用写程序的方法训练也许更能培养出楼主所谓的"嗅觉".

相关推荐

    用数学软件研究Heilbronn型问题(续) (2004年)

    运用数学软件几何画板(The Geometer's Sketehpad)研究以下的Heilbronn型问题:平面上有n个不同的点,它们之间的最大距离和最小距离的比记作出rn、rn真的下确界设为Rn,试求Rn或给出Rn的上下界估计。在文[12]的基础...

    Matlab与数学建模.doc

    Matlab与数学建模 MatLab绘图 作为一个功能强大的工具软件,Matlab具有很强的图形处理功能,提供了大量的二维、三维图形函数。由于系统采用面向对象的技术和丰富的矩阵运算,所以在图形处理方面方便又高效。 ...

    这是一个以Cocos2d-x c++ 断点续传功能下载文件的项目源码 .zip

    Breakpoint-continuingly-download-file 这是一个以Cocos2d-x c++ 断点续传功能下载文件的项目源码 This is a Cocos2d-x c++ source breakpoint continuingly functions…. 软件开发设计:应用软件开发、系统软件...

    App 内部更新 提供12种更新的样式 支持Android全系统版本 支持自定义UI 断点续传.zip

    软件开发设计:PHP、QT、应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等语言的项目开发与学习资料 硬件与设备:单片机、EDA、proteus、RTOS、包括计算机硬件、服务器、网络设备、...

    Scratch和机器人编程有什么区别?.pdf

    Scratch编程和机器⼈编程的区别就是:Scratch是⾯向青少年的图形化简易编程软件,孩⼦们可以通过不同功能的指令⽅块组合,创作出 交互式故事、动画、游戏、⾳乐、艺术和科学计算等作品。⽽机器⼈编程则是以机器⼈为...

    matlab代码续行-Ros-Learning:罗斯学习

    代码续行 Ros-Learning 项目背景 该项目用于ROS的学习,使用自己的电脑作为平台。 主要是为并联机器人的编程做准备,并联机器人项目软件至少要操作六台AX-12舵机,并要实现逆运动学的计算,准备有以下两种方案: ...

    计算机系统与网络安全.pptx

    计算机专业人员必须掌握的专业知识 数学基础 操作系统 数据结构 计算机网络 程序设计及语言 软件工程 计算机体系结构 通信网原理 信号与系统 电路设计 控制理论与控制系统设计 …… 2023/6/4 计算机系统与网络安全...

    数据库课程设计--图书管理系统.doc

    软件工程与数据库 课程设计 任务书 学院名称: 数学与计算机学院 课程代码:_6014419_ 专 业: 年 级: 一、设计题目 图书管理系统 二、主要内容 一个简单的图书管理系统包括图书馆内书籍的信息、学校在校学生的信息...

    高温超导磁储能用斩波器仿真及试验

    针对高温超导磁体充、放电对超导储能系统斩波单元稳定运行的要求,对超导...磁体电压、磁体电流及直流母线电流仿真与实验波形吻合较好,所应用的斩波器数学模型及其控制方法能实现对超导磁体快速稳定地充、放电和续流。

    VC与Labview、Matlab编程论文资料

    基于VC_6_0和ANSYS高压线路覆冰力学分析系统的软件设计.pdf 基于VC_6_0和LabWindows_CVI的虚拟数字示波器的实现.pdf 基于VC_6_0的IEEE1394CCD应用程序开发.pdf 基于VC_6_0的RS_422串口通信设计.pdf 基于VC_6_0的...

    统计学方法与数据分析(上下册)

    在大部分章节中都使用实例未引入主题,并把统计概念和这些非常实际的问题联系在一起进行讲解,深入浅出,从而可以避免许多人对统计所抱有的粗浅的感性认识,即认为统计仅仅是另一门数学课程。作者把统计数据的收集与...

    VC与Labview、Matlab编程论文资料[2].rar

    基于VC_6_0和ANSYS高压线路覆冰力学分析系统的软件设计.pdf 基于VC_6_0和LabWindows_CVI的虚拟数字示波器的实现.pdf 基于VC_6_0的IEEE1394CCD应用程序开发.pdf 基于VC_6_0的RS_422串口通信设计.pdf 基于VC_6_0的...

    VC与Labview、Matlab编程论文资料[4].rar

    基于VC_6_0和ANSYS高压线路覆冰力学分析系统的软件设计.pdf 基于VC_6_0和LabWindows_CVI的虚拟数字示波器的实现.pdf 基于VC_6_0的IEEE1394CCD应用程序开发.pdf 基于VC_6_0的RS_422串口通信设计.pdf 基于VC_6_0的...

    C#,任意阶幻方(Magic Square)的算法与源代码

    公元13世纪的数学家杨辉已经编制出3-10阶幻方,记载在他1275年写的《续古摘奇算法》一书中。在欧洲,直到1514年,德国著名画家丢勒才绘制出了完整的四阶幻方。 而在国外,十二世纪的阿拉伯文献也有六阶幻方的记载...

    增程式电动汽车动力系统电磁兼容研究

    对于汽车这样的复杂大系统,很难准确建立某种数学模型,而且建模过程中,只有采用有效的模型才能准确反映电磁兼容,因此采用系统学方法和优先考虑等效原则就显得尤为必要。大多数传统的分析方法直接采用系统的物理...

    纯电动汽车再生制动系统的建模与仿真 (2010年)

    为提高纯电动汽车的再生制动能量回收率,通过分析制动系统的工作原理,建立了纯电动汽车制动力分配的 数学模型,并根据制动强度和储能元件荷电状态的大小,设计了基于模糊逻辑的制动力分配控制策略,以实现制动能量 的...

    基于碰撞避免的五轴连续式扫描测量轨迹的规划与验证.pdf

    如有侵权,请联系我删除,...DME的CMM应用软件,将扫描轨迹导入至该应用软件中完成扫描过程获取测量结果; 并使用现有的工业上的五轴连续扫描测量轨迹解决方案作为对照,比较两者的的实验结 果与测量效率并得出结论。

    2《计算机文字处理》课程标准.doc

    本课程的相关前续课程是《文字录入》实训。 2.设计思路 本课程标准以就业为导向,邀请行业专家对计算机及应用专业所涵盖的职业群进行任 务和职业能力分析,以此为依据确定本课程的工作任务和课程内容,并与国家资格...

    中南大学有限单元法考试试卷(岳乐-庞俊).docx

    在有限单元法中,把能够满足条件1和条件2的单元称为完备单元,把满足条件3的单元叫做协调单元或保续单元。 23 有限元分析求得的位移解收敛于真实解得下界的条件。 答:1.位移模式必须包含单元的刚体位移,2.位移...

    应用密码学,全文,doc被压缩无密码RAR

    10.5 硬件加密与软件加密 174 10.6 压缩、编码、加密 176 10.8 密文中隐藏密文 177 10.9 销毁信息 178 第三篇 密码算法 180 第十一章 数学背景 180 11.1 信息论 180 11.2 复杂性理论 183 11.3 数论 187 11.4 因子...

Global site tag (gtag.js) - Google Analytics