当前位置:首页 » 操作系统 » 算法导论期末

算法导论期末

发布时间: 2023-02-21 06:30:49

㈠ 为什么有人说弄懂了《算法导论》的90%,就超越了90%的程序员

其实计算机程序底层核心就是各种数学算法,剩下就是怎么用代码去实现数学,世界上有名的计算机程序大牛几乎都跟数学权威方面的专家有关。

从另一个角度回答,因为就算看懂百分百,也很难超越另外的百分之十

很多程序员没读过算法导论

其实不管是对于在校生来说还是已经工作的程序员,一般很少都会接触算法。

学生的话也只有计算机相关专业的开设了数据结构和算法相关课程的才需要用到,但如果只是对付期末考试的话也没啥难度。

但是如果在大学期间接触到算法竞赛就不一样了,需要花费比较多的精力。

的确在工资上任何公司都是10%的算法大佬拿的工资比其他90%的业务开发程序员或者其他的程序员都要高,不过就凭只懂《算法导论》这本书的话还是不太行的,算法离不开业务的。就算超越也是超越那10%的算法工程师里的90%,如果能达到这个境界别说BAT了,微软谷歌都是可以考虑的。

说这个话在我看来他可能是想卖课,卖完再慢慢告诉你,“学到90%也没有那么容易”,或者“在刷我这套题这件事上超越90%的程序员 并不等于收入上超越90%的程序员”。

你多去拼多多参加几个活动,在文字 游戏 和预期管理上你应该就懂了;要是还不懂,大概你也不是那么适合做这一行以及算法导论。

公式:弄懂+一本名着+百分比+超越+百分比+你的群体。

例句:

弄懂sicp的67.9%,你就超越了95%的程序员。

弄懂本草纲目的72%,你就超越了93.7%的中医。

弄懂冰箱说明书的83%,你就超越了99.9%的冰箱使用者(这也许是最真实的,虽然冰箱说明书不是名着……)

至于为什么这么说……个人觉得就是对xx东西的一种崇拜,很大程度上是人云亦云。

算法导论是本不会动的书,不同人读效果不一样的。不要神化某一本书,参差多态乃幸福本源。不看算法导论你也可以会算法,你也可以会数据结构,你也可以进大厂。没有算法导论的时候也依然有研究算法的科学家。你能通过他学会知识很好,但你觉得它晦涩,搞不懂,没有c的代码让你学的不舒服,那就不看他。

人生中见书,书中见人生。读书有时候不一定是为了学东西,可能更多的是一种享受。就像你没学看过csapp之前,通过各种课程,学了零零碎碎的知识。忽然有一天你看了csapp,你觉得好过瘾啊,好爽啊。你觉得你学习的第一天就看csapp能有这种效果吗?

好书不会变少只会变多,更何况帮到你的也未必需要是好书。也许一本书只是很普通的书,不严谨,还都是大白话,但未必就帮不到你。

学东西莫要搞崇拜。很多程序员学习的时候都不是通过算法导论这本书学的,可他们依然很杰出。

程序员来回答一下:

1.《算法导论》这本书理论来说90%程序员也没弄懂,所以你弄懂了就超过了90%。

2.其实程序员是一个大的行业,IT也是一个大的行业,门外人看着都是一群写程序的,修电脑的,更有人认为是装电脑系统的,你被别人交过去装过系统吗?

3.程序员架构上来说,嵌入式 协议栈 应用 网络 服务器 工具 系统 等等等!

4.有一些行业是不需要看算法导论的,更有一些转行过来的,应该更不太了解算法导论。

这本书在美国的大学被称为clrs, 是标准的本科高年级和研究生入门的算法课课本。优点是比较全面的讲解了常用和基本的算法,习题质量不错。问题是动态规划讲的不好,篇幅原因一些近代的算法没有概括。总的来说是本不错的算法入门教科书。

算法是计算机科学的核心。计算理论偏数学,编译原理和操作系统偏硬件,真正计算机科学的核心就是算法。无论做研究还是搞工程,都是必不可少的。

程序是给人看的,不是给机器。写给机器的程序谁都可以写出来,但不是每个程序员都能写出别人看懂的东西

程序是什么,程序就是数据结构和算法,弄懂了超90%的程序员不是很正常嘛

看懂2%就超过了80%,没必要看那么多

因为这本书翻译的很枯燥、也很理解,这种情况下你还理解了90%,说明你有耐心,有恒心,耐得住寂寞。我相信不只是做程序员,做其它行业也会很优秀。

㈡ 大一,计算机导论要怎么复习来面对期末

给你一些思路:

1、章节复习,不管是那门学科都分为大的章节和小的课时,一般当讲完一个章节的所有课时就会把整个章节串起来在系统的讲一遍,作为复习,我们同样可以这么做,因为既然是一个章节的知识,所有的课时之前一定有联系,因此我们可以找出它们的共同之处,采用联系记忆法把这些零碎的知识通过线串起来,更方便我们记忆。

2、轮番复习,虽然我们学习的科目不止一项,但是有些学生就喜欢单一的复习,例如语文不好,就一直在复习语文上下功夫,其他科目一概不问,其实这是个不好的习惯,当人在长时间重复的做某一件事的时候,难免会出现疲劳,进而产生倦怠,达不到预期的效果,因此我们做复习的时候不要单一复习一门科目,应该使它们轮番上阵,看语文看烦了,就换换数学,在烦了就换换英语,这样可以把单调的复习变为一件有趣的事情,从而提高复习效果。

3、纠错整理:考试的过程中难免会做错题目,不管你是粗心或者就是不会,都要习惯性的把这些错题收集起来,每个科目都建立一个独立的错题集,当我们进行考前复习的时候,它们是重点复习对象,因此你既然错过一次,保不准会错第二次,只有这样你才不会在同样的问题上再次失分。

4、思维导图复习:思维导图是一个伟大的发明,不仅在记忆上可以让你大脑里的资料系统化、图像化,还可以帮助你思维分析问题,统筹规划。将知识用思维导图画出来进行整理记忆,可以很快分析出知识的脉络和重点,并且记得牢固。

㈢ 计算机导论期末考试是开卷考吗

计算机导论期末考试是开卷考。根据查询相关公开信息显示,计算机导论期末考试满分为100分,考试时间为90分钟,考试形式为开卷。

㈣ 大二课程变得很多应该怎么对待,使得学习成绩和ACM两不误呢

大二课程开始变多。
方法:
1,制定合理的学习计划,分时段学习不同的科目。
2,ACM要在平时多下工夫,打好基础。
3,学习成绩是靠课程的考试,考试科目平时听一下就好,重点放在考试时的突击复习。
【补】
学习ACM入门的方法:
第一阶段:先刷水题,水题,就是几乎不牵扯算法。需要自己想方法解决。这样的题,一是锻炼逻辑思维和思维的严谨,二是锻炼代码能力。一般做到200题左右。
第二阶段:渐渐的学一些简单的算法。第二阶段刷到400题。
第三阶段: 在第二阶段的基础上继续纠结算法。 这时候可以看算法导论了。学习数据结构。继续刷题。刷到600左右。

㈤ 学半年C语言能学成什么样

学半年,恐怕刚入门的水平吧。
个人认为,学计算机语言关键在于实践。在知识基础相同的前提下,实践经验越多,应用中能够解决的问题越多,编出的程序效率也越高。为了获得实践经验,一是靠自己多练,多琢磨怎样把程序简化或者题目条件变成另一个样子之后怎么编程;另一大提高实践经验的途径,个人认为是阅读别人的程序。但是这就要求你阅读的程序一定要是正确的,以免误人子弟。阅读别人的程序一定要读懂,每句每字都读懂,明白作者为什么要这样写,这样写的好处(甚至坏处)是什么。如果你要参加竞赛,比如高中的oi(不过看你年龄应该是高中毕业左右吧)或者大学的acm,那么还要学习大量的关于算法、数据结构的知识,比较高等的数学知识也是必不可少的,之后进行大量的训练,才能够达到比较好的效果;如果你是准备以程序设计为专业,那么还可以再问问学这个的人,毕竟我不是学计算机的,呵呵。
另外,书不在多,关键要读,且要读精。程序方面的书上也难免出错,故切不可迷信,适当地带着批判、挑剔的眼光去看书上的知识,遇到觉得有疑义的地方一定要打开电脑将程序实际运行一下求证。这样才能基本保证你学到的知识的准确性。
再有,养成良好的编程习惯也是很重要的。有了良好的编程习惯,不仅可以使编程效率提高,还能够让程序的可读性增强。不仅自己需要的时候翻看旧的程序还能看懂,而且能让别人看自己的程序也能看懂。所谓编程习惯,我认为,主要包括书写格式、变量命名规则等。形成了一套自己的书写风格,能让程序结构、层次看上去一目了然,方便自己和他人。
学习程序设计,持之以恒是十分关键的。我们当年准备信息竞赛(oi)的时候,完成一个程序少则半小时,多则需要花去几天的时间。程序设计的工作很多时候很复杂,需要有良好的耐心和细心。
参加信息竞赛3年有余,以上是一点自己的见解。分不重要,重要的是分享经验,呵呵。
附注一句:C语言是当今大学里很多非计算机专业都要求的公共课,工作中用到的机会也有,学好这门课程是很有好处的。推荐我们的专业课教材,谭浩强《C程序设计》,清华大学版,绿色封面。这书好评比较多,个人认为还可以。
最后,祝愿你学习C语言成功!

㈥ 谁有大一计算机导论期末考试试题

下列说法中正确的是( )。 a在买计算机时,当然买最高档的 b频繁开、关机对计算机的使用寿命并无影响c 为防止计算机感染病毒,应常用消毒液清洗计算机 d系统启动软盘应写保护,且一般在该盘中不要存放用户程序及数据 D
下面预防计算机病毒的手段,错误的是( )。 a要经常地对硬盘上的文件进行备份 b凡不需要再写入数据的磁盘都应有写保护c 将所有的.com和.exe文件赋以“只读”属性 d对磁盘进行清洗 D
计算机病毒通常分为引导型、复合型和( )。 外壳型 文件型 内码型 操作系统型 B
最先开展的电子商务类型是( )。 企业对个人 企业对企业 企业对政府 个人对个人 A
人类社会最先开展的电子商务类型是( )。 B to C B to B B to G C to C A
人类社会最先开展电子商务零售活动的国家是在( )。 亚洲 欧洲 美洲 澳洲 B
公布世界上第一个Internet电子商务标准是在( )。 1998年 1999年 2000年 2001年 B
在电子商务分类中,C to C是( )。 消费者与消费者间的电子商务 企业间的电子商务 企业内部的电子商务 企业与消费者间的电子商务 A
在电子商务分类中,B to G是( )。 消费者与消费者间的电子商务 企业间的电子商务 企业内部的电子商务 企业对政府的电子商务 D
在电子商务分类中,G to G是( )。 政府与政府间的电子商务 企业间的电子商务 企业内部的电子商务 企业与消费者间的电子商务 A
在电子商务分类中,B to B是( )。 消费者与消费者间的电子商务 企业间的电子商务 企业内部的电子商务 企业对政府的电子商务 B
在电子商务分类中,B to C是( )。 消费者与消费者间的电子商务 企业间的电子商务 企业与消费者的电子商务 企业对政府的电子商务 C
在电子政务分类中,G to G是( )。 政府对政府的电子政务 企业间的电子政务 政府对企业的电子政务 政府对公民的电子政务 A
在电子政务分类中,G to B是( )。 企业对个人的电子政务 政府对企业的电子政务 企业对政府的电子政务 政府对公民的电子政务 B
在电子政务分类中,G to C是( )。 政府对政府的电子政务 企业间的电子政务 政府对公民的电子政务 企业对政府的电子商务 C
在电子政务分类中,B to G是( )。 政府对政府的电子政务 企业间的电子政务 政府对公民的电子政务 企业对政府的电子政务 D
我国电子政务的“三网一库”是指机关内部办公网、办公义务资源网、( )及电子政务信息资源库。 局域网 城域网 公共管理与服务网络 广域网 C
ECP(Electronic Check Paper)是( )。 电子现金 信用卡 电子支票 电子钱包 C
Digital Purse是( )。 电子现金 数字钱包 电子支票 电子钱包 B
与传统现金相比电子现金的优点是( )。 方便、成本低 管理控制技术复杂 已解决合理征税问题 不可能被伪造 A
与传统结算工具相比,电子结算的主要缺点是( )。 缺乏便利性 缺乏安全性 初期投入大、技术复杂 不能进行小额结算 C
电子数据交换的简称是( )。 EFT EDI NET EC B
下面哪项不属于电子商务软件功能( )。 商品目录显示 购物车 交易处理机制 WWW平台选择 D
在线调查常见的方法是( )。 邮寄调查 电话调查 人员调查 电子邮件调查 D
下列有关数据的存储结构的叙述中正确的是: 顺序存储方式只能用于存储线性结构 顺序存储方式的优点是存储密度大、且插入和删除运算效率高 链表的每个结点中都恰好包含一个指针 栈和队列的存储方式既可是顺序方式也可是链接方式 D
算法的时间复杂度是指: 执行算法程序所需要的时间 算法程序的长度 算法执行过程中所需要的基本运算次数 算法执行过程中所需要的基本运算次数 C
算法的空间复杂度是指: 算法程序的长度 算法程序中的指令条数 算法程序所占的存储空间 算法执行过程中所需要的存储空间 D
下列叙述中正确的是: 线性表是线性结构 栈与队列是非线性结构 线性链表是非线性结构 二叉树是线性结构 A
数据的存储结构是指: 数据所占的存储空间量 数据的逻辑结构在计算机中的表示 数据在计算机中的顺序存储方式 存储在外存中的数据 B
下列关于队列的叙述中正确的是: 在队列中只能插入数据 在队列中只能删除数据 队列是先进先出的线性表 队列是先进后出的线性表 C
下列关于栈的叙述中正确的是: 栈是非线性结构 栈是一种树状结构 栈具有先进先出的特征 栈具有后进先出的特征 D
链表不具有的特点是: 可随机访问任一元素 插入和删除不需要移动的元素 不必事先估计存储空间 所需空间与线性表长度成正比 A
在深度为5的满二叉树中叶子结点的个数为: 32 31 16 15 C
对长度为n的线性表进行顺序查找:在最坏情况下所需要的比较次数为: n+l n (n+1)/2 n/2 B
程序流程图(PFD)中的箭头代表的是: 数据流部 控制流 调用关系 组成关系 B
下面不属于软件工程3要素的是: 工具 过程 方法 环境 D
数据流图用于抽象描述一个软件的逻辑模型。数据流图由一些特定的图符构成。下列图符名标示的图符不属于数据流图合法图符的是: 控制流 加CE 数据存储 源和潭 A
软件测试过程是软件开发过程的逆过程其最基础性的测试应是: 集成测试 单元测试 有效性测试 系统测试 B
在结构化方法中软件功能分解属于下列软件开发中的阶段是: 详细设计 需求分析 总体设计 编程调试 C
软件测试的目的是: 发现错误 演示元件功能 改善软件的性能 挖掘软件的潜能 A
软件需求分析阶段的工作可以分为4个方面:需求获取、需求分析、编写需求规格说明书以及: 阶段性报告 需求评审 总结 都不正确 B
软件调试技术包括: 边界值分析 演绎法 循环覆盖 集成测试 B
软件需求说明书是需求分析阶段的最后成果。以下Ⅰ.数据描述、II.功能描述、Ⅲ.性能描述、Ⅳ.文件结构,哪些是其应包括的内容? I和II II和III II和IV I,Ⅱ和Ⅲ D
软件测试方法中的静态测试方法之一为: 计算机辅助静态分析 黑盒法 路径覆盖 边界值分析 A
在详细设计阶段经常采用的工具有: PAD SA SC DFD A
下列工具中需求分析常用的工具是: PAD PFD NS DFD D
在软件生命周期中能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是: 概要设计 详细设计 可行性分析 需求分析 D
需求分析阶段的任务是确定: 软件开发方法 软件开发工具 软件开发费 软件系统的功能 D
检查软件产品是否符合需求定义的过程称为: 确认测试 集成测试 验证测试 验收测试 A
软件危机的主要表现有多个方面。例如:I�需求增长无法满足II�生产成本过高Ⅲ�进度无法控制Ⅳ�需求定义不准确V�质量不易保证Ⅵ�难以满足维护需要但比较而言。一般认为软件危机产生的主要原因是: I和II I和III II和V I和Ⅵ D
软件测试是保证软件质量的重要手段其首要任务是: 保证软件的正确性 改正软件存在的错误 发现软件的潜在错误 实现程序正确性证明 C
下面不属于软件设计原则的是: 抽象 模块化 自底向上 信息隐蔽 C
在结构化方法的软件需求定义中可采用分析工具来辅助完成。下列工具中哪些是常用的工具?。 I数据流图 II结构图 Ⅲ数据字典 Ⅳ判定表I和IIII、Ⅱ和IIII、Ⅱ和IVI、Ⅲ和Ⅳ A
结构化程序设计主要强调的是: 程序的规模 程序的易读性 程序的执行效率 程序的可移植性 B
对建立良好的程序设计风格下面描述正确的是: 程序应简单、清晰、可读性好 符号名的命名只要符合语法 充分考虑程序的执行效率 程序的注释可有可无 A
在面向对象方法中一个对象请求另一个对象为其服务的方式是通过发送: 调用语句 命令 口令 消息 D
信息隐蔽的概念与下述哪一种概念直接相关? 软件结构定义 模块独立性 模块类型划分 模块耦合度 B
下面对对象概念描述错误的是: 任何对象都必须有继承性 对象是属性和方法的封装体 对象间的通信靠消息传递 操作是对象的动态属性 A
数据库管理系统是( )。 应用软件 系统软件 教学软件 工具软件 B
数据库系统的组成要素不包括( )。 硬件平台 用户 网络 数据库管理员 C
"在下列关系中,( )是一对多的关系。
" 董事长和员工 医生和患者 产品和生产厂家 任课教师和学生 A
在对关系的描述中,( )是错误的。 一个关系表通常是同一个主题的数据集合 关系表采用主键来唯一标识元组 一个关系表可以有多个主键 关系是二维表 C
对关系数据库的检索操作可由三种基本关系运算组合而成,这三种基本关系运算不包括( )。 连接 "比较
" 选择 投影 B
"下列不属于Access数据库对象的是( )。
" 表 窗体 向导 查询 C
"下列不是关系种类的是( )。
" 多对一 一对一 一对多 多对多 A
"属于Access可以导入或链接数据源的是( )。
" Excel Access FoxPro 以上皆是 D
"下述关于数据库系统的叙述中正确的是( )。

" 数据库系统避免了一切冗余 数据库系统减少了数据冗余 数据库系统中数据的一致性是指数据类型一致 数据库系统比文件系统能管理更多的数据 B
三级模式间存在二级映射,它们是( )。 概念模式与外模式间,概念模式与内模式间 子模式与内模式间,外模式与内模式间 子模式与外模式间,概念模式与内模式间 概念模式与内模式间,外模式与内模式间 A
关系数据库管理系统能实现的专门关系运算包括( )。 关联、更新、排序 排序、索引、统计 选择、投影、连接 显示、打印、制表 C
用树型结构来表示实体之间联系的模型是( )。 数据模型 网状模型 层次模型 关系模型 C
在关系数据库中,用来表示实体之间联系的是( )。 二维表 线性表 树结构 网结构 A
将E-R图转换到关系模式时,实体和联系都可以表示为( )。 关系 属性 键 域 A
下列4个选项中,可以直接用于表示概念模型的是( )。 层次模型 实体-联系(E-R)模型 关系模型 网状模型 B
数据库的三级结构分别被定义为( )。 子模式、模式和概念模式 外模式、子模式和存储模式 模式、概念模式和物理模式 外模式、概念模式和内模式 D
"公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( )。
" 一对一 多对多 一对多 多对一 C
下列4个选项中,说法不正确的是( )。 数据库具有较高的数据独立性 数据库中的数据可以共享 数据库避免了一切数据的重复 数据库减少了数据冗余 C
"在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是( )。
" 人工管理 文件系统 数据项管理 数据库系统 D
"从关系中挑选出指定的属性组成新关系的运算称为( )。
" 投影运算 选取运算 联接运算 交运算 A
"数据库系统的核心是( )。
" 软件工具 数据库管理系统 数据库 数据模型 B
把E-R模型转换成关系模型的过程,属于数据库的( )。 需求分析 概念设计 逻辑设计 物理设计 C
关系表中的每一横行称为一个( )。 字段 元组或记录 码 属性 B
"数据库系统的体系结构是( )。
" 三级模式结构和二级映射 二级模式结构和一级映射 三级模式结构和三级映射 三级模式结构和一级映射 A
数据库中存储的是( )。 数据之间的联系 数据 数据以及数据之间的联系 数据模型 C
"反映现实世界中的实体及实体间联系的信息模型是( )。
" 关系模型 层次模型 E-R模型 网状模型 C
数据独立性是数据库技术的重要特点之一。所谓数据独立性是指( )。 数据与程序独立存放 不同的数据被存放在不同的文件中 不同的数据只能被对应的应用程序所使用 以上三种说法都不对 D
数据模型按不同的应用层次分为三种类型,它们是( )数据模型、逻辑数据模型和物理数据模型。 概念 关系 用户 层次 A
数据库设计分为以下6个阶段:需求分析阶段、( )、逻辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。 系统设计阶段 "概念设计阶段 " 总体设计阶段 模块设计阶段 B
关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、( )和自定义完整性。 域完整性 关联完整性 参照完整性 用户完整性 C
数据库管理系统常见的数据模型有层次模型、网状模型和( )三种。 逻辑模型 关系模型 树状模型 物理模型 B
如果一个工人可管理多个设施,而一个设施只被一个工人管理,则实体"工人"与实体"设施"之间存在( )联系。 网状 多对多 一对多 一对一 C
下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。 外模式 内模式 概念模式 逻辑模式 B
关系模型的数据操纵即是建立在关系上的数据操纵,一般有( )、增加、删除和修改四种操作。 连接 投影 选择 查询 D
在关系数据库中,把数据表示成二维表,每一个二维表称为( )。 关系 实体 元组 对象 A
数据库保护分为:安全性控制、( )、并发性控制和数据的恢复。 密码控制 访问控制 完整性控制 正确性控制 C
下列叙述中正确的是( )。 数据库系统中,数据的物理结构必须与逻辑结构一致 数据库技术的根本目标是要解决数据共享的问题 数据库设计是指设计数据库管理系统 数据库是一个独立的系统,不需要操作系统的支持 B
"下列有关数据库的描述,正确的是( )。
" 数据库是一组文件 数据库是一个结构化的数据集合 数据库是一个关系 数据库是一个DBF文件 B
数据库设计包括两个方面的设计内容,它们是( )。 概念设计和逻辑设计 模式设计和内模式设计 内模式设计和物理设计 结构特性设计和行为特性设计 D
单个用户使用的数据视图的描述称为( ) 内模式 外模式 存储模式 概念模式 B
"在数据库管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有( )。
A. B.
C. D.
" 数据无冗余 专门的数据管理软件 数据可共享 特定的数据模型 D
"SQL语言又称为( )。
" 结构化控制语言 结构化操纵语言 结构化定义语言 结构化查询语言 D
索引属于( )。 概念模式 外模式 模式 内模式 B

㈦ 你会如何设计大学计算机课程

题主的问题,计算机专业所学知识与工作脱节,最根本的原因在讲课的老师与工业界脱节。高校的老师大概分两种:
(1)做科研发论文的。学术与工业界的思维方式和技能树都是不一样的。
(2)做工程的,所谓“横向项目”。这种甲方定做软件的模式,更倾向传统软件工程,与互联网公司的文化与开发模式也有很多不同。


如果高校希望培养高端程序员,必然需要有业界经验的老师,可这样的老师上哪里找呢?有经验、懂技术的,要么去做“架构师”、技术顾问,要么创业成为高富帅,分分钟改变世界去了,谁愿意在学校从讲师熬到副教授、教授,还得向国内学术界的种种歪风怪气低头哈腰?


不过好在互联网发展了,计算机的很多专业课程又适合在线学习。某个高校的一个老师能把某门课讲好,各个高校的学生都可以去听这门课。国内几个最好的高校可以建立自己的 MOOC 平台,把一部分优秀课程采用 MOOC 方式教学(目前一些大学早已把优秀课程的录像和课件公开在网上,不过这种方式对在线学习并不友好),并实现校际学分互相承认(没有学分的 MOOC 只能作为兴趣爱好,还与学校的课程存在时间冲突,很难推广)。


学生抱怨老师讲得不好,其实教务处和老师也有自己的苦衷。


(1)学校由于缺少某个研究领域而很难开设相应方向的课程,是再平常不过的事情了。比如科大的数理逻辑年年都是陈小平教授讲,其他很多学校就没有能讲好一阶逻辑的老师;清华叉院的理论计算机课程也是颇具特色,科大也不容易开出对应课程。如果这些课程能够变成 MOOC,则所有高校的学生都可以听到最好的课、学到相应的知识。


(2)有些老师只希望静静地搞学术、发论文,并不想站上讲台,但学校常常要求一定级别的老师必须上课(不然就只能当研究员,评不上教授),而评职称主要是看科研成果,教学质量是不怎么看的。因此一些老师是被 “赶鸭子上架”,并不想好好教课。此外,即使是真心教课的老师,也存在表达能力、授课经验等方面的差异,学术水平高的老师未必能把课教好。如果有公开的 MOOC 平台,学生自然会向好老师集中。通过收取认证证书费的方式,上课的学生越多,老师获得的提成也就越多(就像市面上的各种培训机构)。混日子的老师也会被自然淘汰。


回到题主所问的课程设置上,我觉得数理基础课还是传统方式授课,而计算机专业课可以使用网络授课。


采用传统方式授课:
数学课(必修):微积分,线性代数,具体数学,概率论与数理统计
数学课(选修):图论,随机过程,复变函数,高等代数,数理逻辑,计算理论基础 工程基础课(必修):数字电路、信号与系统
工程基础课(选修):模拟电路、数字信号处理、通信技术、工程制图
物理、化学等课程(选修)
通识教育:微观经济学等


计算机专业课采用 MOOC 方式授课:
计算机专业课程一律不点名,不交纸质作业。平时作业全部在线完成,由计算机评分(当然,要做好防作弊机制)。
成绩主要由平时作业和期末 project 构成。期末考试占成绩比例不超过 30%,开卷并允许使用计算机和网络(但必须独立完成)。期末 project 要在 GitHub 上做,每人要做报告公开展示,成绩由老师评分和同学互评结合。


计算机必修课:
编程语言基础(Python)
计算机系统概论(CSAPP)
算法与数据结构(算法导论,可以讲两学期)
操作系统(Understanding the Linux Kernel)
编译原理(龙书 + clang)
计算机体系结构
计算机网络
数据库(关系数据库与 SQL、NoSQL)
数据挖掘与机器学习


计算机选修课(可以有很多,仅举几例):
程序设计语言原理(SICP,Haskell)
并发程序设计(Go,Scala,Erlang)
分布式系统
Web 开发技术(RoR 或 node)
计算机图形学
深度学习与大数据
搜索算法与人工智能
汇编语言
密码学
网络安全
……(如果高校课程通过网络共享,这张列表将很长,学生也能选到自己真正喜欢的课程)


计算机文化与实践:(感觉国内高校大多缺少这类课程)
IT 行业发展史(参考《浪潮之巅》)
计算机研究前沿(请各研究领域大牛来科普自己的领域)
交互设计与用户体验
软件工程与创业实践(团队设计制作并公开发布产品,软件工程课决不能做没人用的“产品”)


这些计算机专业课的名字似乎并不陌生,国内国外的计算机专业不外乎这些课,所以我也不必把培养计划誊抄一遍。但名字相同的课程,授课内容和授课质量可以是千差万别。同样一个计算机网络,差的课程可以让学生背诵各种协议和名词,“在讲 IP 头的那节课睡着,在讲 TCP 头的那节课醒来”;好的课程可以让学生理解网络通信中的挑战与 trade-off,进而学会自己设计安全可靠的网络协议。


只有把各个高校的课程都放上网,我们才能知道自己家的某些课程有多烂,别人家的某些课程有多好,才会形成自然选择压力,推动高校计算机课程质量的提高。

㈧ 判别分析方法、聚类分析方法、HMM方法简介

三个学分的通选课,A类
曾经作为力学系的限选课开出.
欢迎大二以上有数理基础的同学选修.

《生物信息学算法导论》课程介绍
课程英文名:Introction to Computational Biology
课程号:00331440
开课单位:力学系、理论生物学中心
开课教师:朱怀球
上课时间:每周四晚
上课地点:理教201
选课地点、时间:三教103,9月5日星期五上午8:00~12:00

一、课程设置目的及主要内容
随着人类基因组计划的不断推进,运用理论模型和数值计算研究生命科学,已经成为一门 最吸引人的新兴学科,是当今生命科学和自然科学的核心领域和最具活力的前沿领域之一 。生物信息学/计算生物学以现代分子生物学数据作为主要研究对象,发展理论模型和计算方法,揭示以基因组信息结构为主的生物复性,以及生长、发育、遗传、进化等生命 现象的根本规律。本课程主要为具有数理背景的大学二年级以上本科生(含大二)和相关领域的研究生开设,偏重理论建模和算法的学习。首先介绍当代生命科学的发展和现状, 然后介绍计算生物学中几种主要的研究方法,包括统计学方法、Markov过程模型、信息论方法、机器学习方法等,并结合当今生物信息学领域的最新进展,讨论上述各种方法实际研究中的应用(包括基因序列信息分析、基因预测、分子进化及系统发育树和蛋白质调控网络等重要问题)。 本课程注重学科交叉、融合,以介绍思想、方法为主,深入浅出,避免繁琐、抽象的数学形式,启发学生综合运用数学、物理、工程科学和计算机知识的能力,拓宽知识面,了解学科前沿和最新进展,培养跨越生命科学、计算科学、数理科学等不同领域的“大科学”素质和意识,为今后选择新兴交叉学科领域进行深造奠定基础。

二、课程大纲

第1章 绪论 (1学时)
从人类基因组计划说起
计算生物学——后基因组时代的呼唤
计算生物学主要研究内容和方法
以生命科学为核心的“大科学”

第2章 生物学基础 (5学时)
What is life?——从薛定锷的思考到“双螺旋”的发现
生命的演化和分类
生命的分子组成
遗传的分子基础
基因组与基因结构

第3章 生物信息数据库和计算生物学主要问题 (3学时)
生物信息数据库简介
计算生物学主要问题之一:序列比对
计算生物学主要问题之二:核酸和蛋白质结构与功能预测
计算生物学主要问题之三:基因组序列分析
计算生物学主要问题之四:功能基因组相关信息分析

第4章 计算生物学的统计学方法 (10学时)
统计方法的基本概念
回归分析方法及其应用
判别分析方法及其应用
聚类分析方法及其应用

第5章 计算生物学的Markov过程模型 (6学时)
Markov过程的基本概念
隐Markov模型(HMM)的基本原理
HMM模型的计算生物学应用

第6章 生物学的信息论基础 (6学时)
信源与信息熵
离散信道与平均互信息
编码理论简介
生物遗传信息的传递

第7章 遗传算法和人工神经网络方法简介 (8学时)
遗传算法的基本原理和方法
遗传算法与人工生命模型
人工神经网络的基本概念
人工神经网络的模式识别算法

第8章 生物信息学/计算生物学的若干重要问题 (6学时)
基因预测算法和软件
分子进化与系统发育
基因调控网络

三、本课程考试方式

在老师指导下,结合所讲内容进行学科调研,要求同学在期中、期末分别完成两次调研论 文,论文题目不限。

㈨ 大家玩C遇到那种喜欢又来走去吸人的pf和C怎么防

题记:本来题目想叫做“从C到无穷大”,太晦涩了。后来又想用“C、D、E、F……”,太不知所云了。于是,用了这个题目,它的缩写恰好就是CDEF。不管用什么样的题目,我所想表达的都一个意思,那就是C语言课程结束以后,我们该干什么。我们都学过很多课程,每门课程都有大纲,有教材。严格按照大纲学习,把教材烂熟于胸,这是一贯的学习策略,并靠此斩落考试无数,一路杀入大学。如果你学习C语言的目的仅仅是为了期末考试,至多再加上一个“二级”,那么请不要再继续阅读本文,因为后面的文字只会给你带来负面作用。一门真正的大学课程的学习应该是永无止境的,没有任何机构可以给它划个框框说哪些该学哪些不用学,也不会有任何教材能解答你未来会遇到的所有疑问。本文仅希望帮助那些热爱编程,并把编程当作未来旅程中不可缺少的元素的同学。帮助大家把C作为一个起点,去开拓无尽的未来。怎样学会CC是永远学不会的!仅从语法上说,C可能是所有高级语言中最简单的,最常用的关键字不会超过30个,语法规则也不复杂,没有需要死记硬背的“习惯用法”。如果C语言就像英语一样只是单词、语法,那么课程结束后所有人都可以说学会C了。每种自然语言都能用简单的文字与语法来描述复杂的大观世界,但并不是每个人都可以像爱因斯坦、霍金、马克思、李白、金庸等等那样用语言表达出令人景仰的内容。即便与你身边的人相比较,同样说汉语的你们也很难对同一个事物说出完全一样的观点。C语言亦然。它是一个语言工具,通过这个工具,我们表达我们对世界的理解,或者具体说,对程序的看法。眼界与思维直接影响着我们写下代码的漂亮程度。如果以总能写下漂亮代码作为学会C语言的判断标准的话,那么因为眼界与思维的锻炼是无止境的,所以C是永远学不会的,就像我们都还没有真正学会汉语一样。既然C有那么多可学的内容,那么我们该学什么呢?学C学什么学C的目的并不在于要学会C,否则就太狭隘了。我们要利用学习C的机会,拓展自己的眼界与思维,锻炼能力,成为世界(包括计算机世界、编程世界)的主宰,而不是C语言的奴隶。第一学学习“学习”是一个主动创造的过程而非被动接受。真正的学习需要主动去寻求广泛的知识,跟踪最新进展,综合思考判断各方观点,动手实践检验,进而形成自己的观点,再将其传播出去。C语言的学习也符合这个规律。经典书籍要读,手册和在线文档要经常查,Internet更是提供了接触最新知识的机会。这里推荐两个网站:网页链接和网页链接(注:站长另谋新欢,此站已关)。后者是一名哈工大的学生在大四时创的,以钻研深层技术为目标,被一位微软的员工评论为“牛人处处有,PureC特别多”。但真正能把全世界的牛人集中在一起的地方是Newsgroup:news://comp.lang.c。如果你不知道Newsgroup是什么,就马上去搜索引擎找答案吧(网页链接是一个适合新手的Newsgroup入口)。搜索引擎是最重要的知识来源,首推google.com。可惜工大校园内的机房基本都不能出国访问,所以.com也勉为其难地不得不用一下,尽管它搜出信息的可用性和可信性都差一些。在此特别说明一下,英文阅读能力十分重要,别回避英文信息,因为总会有你不能回避的那一天。硬着头皮冲上去,很快你就会发现读英文比读中文快乐很多。如果对学到的知识一概接受,那就无趣了。当阅读范围扩张,会发现即便是权威的观点也会有很多矛盾,也会看到总有所谓“真理”被推翻。所以,带着“怀疑”的态度去阅读,可能更有利于习惯背书的中国学生开拓思维。C语言中就有很多历史悬案,喋喋不休地争论至今没有结果,比如缩进该用空格还是Tab,“{”是否该单列一行……。一定要有自己的观点,“尽信书不如无书”吗。学编程,上机的重要性远远大于看书。亲自动手编程序的学习效果比干啃书本要好上0xFFFFFFFF倍。上机不要就是敲书上的例子,那只能锻炼出打字员。干点儿有挑战性的事情,比如编个小游戏,做个恶作剧程序,更可以考虑开发共享软件。如果你感到无从着手,那就下载别人的源代码看。同时,千万不要把自己陷到TC2里面,把路子走得宽一些,VC、gcc、Dev-C++、Eclipse……,广阔天地,精彩无限。第二学计算机除了C++,再很难找到别的高级语言像C这样与计算机如此接近。只有懂得了C语言与计算机的内在原理,才可能轻松、快乐地驾驭C。课堂教学能教会你类型、选择、循环、输入输出等,我喜欢称他们为C语言的“毛尖”,也就是连“皮毛”都没接触到。当每写下一行代码,不仅能想象到它的执行效果,更能熟知它将给CPU、内存和各种计算机设备带来什么时,那种感觉是非常奇妙且令人激动的。这种情况下,你才能感觉到你真正地是在驾驭C,用C来做一切你想做的事情,而不是在C的束缚下蹩手蹩脚地应付各种莫名其妙的问题。为了找到这种感觉,就不要满足于课堂与一本教材,更不要迷信非专业人士捧出的经典。现在我们有如此好的机会可以接触众多的世界级大师、小师的着作,那么就应该抓住机会去直接与它们对话。下面介绍一些适合于入门的顶级教材。[Deitel94]已经出了第四版,不过国内只能买到第二版,它是一本可以把你引上程序设计的正路的书。[Prata04]的作者写了一系列“Primer”书,本本经典,数次升级,内容充实。[Kelley97]也是一本经典教材,它的最大好处是没有中文版,可以强迫你用英语去思考。[Roberts94]非常另类,作者是斯坦福大学的计算机系的资深教授,着名的学院派计算机教育专家。它的书教的是编程,而不是C语言(scanf()在539页第一次出现),所以如果你想学习上乘的编程技术,这本书是非常好的入门读物,但如果想学精深的C语言,它就帮不上忙了。[Harbison02]是“大全”型的,可能是唯一一个为了随时翻阅而值得收藏的书,所以它不是一个入门书,但当作初学者的辅助参考书非常的不错。课程结束以后,首先要撕烂教材(没错,就是作者里有我名字的那本。撕烂了扔掉,总比让我频频在旧书市看到它更好过一些),然后马上去拜读[Kernighan88]。这本由C语言的设计者所着的书用极其简练却精确的文字描述着C,每次捧卷都能让人对C语言的理解更提高一层。如果想获得绝对精确的信息,除了看[C99]别无选择,虽然C99很难看。进而可以阅读[Kernighan99]和[Linden94]来提高自己的实际编程能力、扩大见识。前者偏重于技巧与数据结构,后者偏重于经验与原理,尤其是后者还能让你发现原来编程是天底下最有趣的事情。当随着编程量的增加,你犯的错误也越来越多的时候,找来[Maguire93],成为bug终结者。如果通过学习C语言你对计算机的深层原理产生了浓厚的兴趣,那么就看[Bryant02]吧。此外还有一本专门“贬”C语言的书——[Koenig89],也值得一看。这些书的作者兢兢业业地完成本职工作之余,还把很多相关但不在本书论述范围的内容以参考文献的形式推荐给读者。从参考文献出发,你可以发现值得品味的。国人原创的技术书籍虽然不比老外经典,但也有其价值,间或冒个精品。这里推荐一本[林锐03],它论厚重自然不比大师的书,但颇有特点,挺无厘头的,一些即兴的感慨也给编程添加了点点人情味。第三学数学我学生阶段最大的憾事就是在本科时不仅没认识到数学的重要性,还对它产生了极其错误的看法,以至于今天一见到数学好的人就景仰得不敢抬头,自惭形秽。当初未遇名师指点,落此下场也算生不逢时。今以我的惨痛遭遇告诫大家,数学真的是网络之母,必须用精力好好孝敬。想体会数学的奇妙及现实、数学与C语言的完美结合,就到网页链接去在线做题吧。数学在程序设计中被具体化为算法与数据结构,关于它们的书我读的不多,下面的介绍的是参考别人的评论而不是我个人的观点。数据结构比较简单,也应该先学习,建议看[Weiss96],然后过渡到算法。算法领域里就林林总总彩旗飘飘了,[Cormen01]可能是一个很合适的入口,它帮你总览算法,寻找自己感兴趣的领域再继续找别的书籍深入下去。算法领域里最重要的书是[Knuth98],非常经典,也非常大部头的三卷本,也非常贵,任何一个能读完哪怕其中一卷的人都足以令人景仰。我现在还只能把它们供奉到书架上。C以后学什么?虽然C永远学不完,但绝不能抱C守缺。事实上,前面所述的很多内容已经不是C语言的范畴了,它们应该属于用计算机解决实际问题的技术。那么回到语言本身,C可能是大多数同学学习的第一种计算机语言,但它不应该是最后一种。计算机这个人类发明的最伟大的工具是每个人都无法回避的,随身带几种计算机语言,是潇洒走天下的一个有力保证。诚然说,考试过后还能再用上C的人是少数,但能不再编程的人在工科院校里还是很珍稀的。C语言强大,号称无所不能,可它并不是解决所有问题的最佳选择。没有任何一种语言可以包打天下,它们都有自己擅长的领域和不擅长的方向。我们必须要针对自己的领域特色选择一种或几种最适合的语言来自学,同时也不需担心学习C语言的历程会白费,因为语言之间的“形”虽然不同,但“神”都是相通的。本文第二部分里建议大家学习的内容里很多就是这“神”的一部分。能够超脱语言去思考程序设计的问题,才是真正的领会了编程的要旨。能把自己的思想用语言行云流水地表达出来,才是真正的编程高手。参考文献注:括号内的书名是英文原名。斜体字的“中”表示有中文版,“英”表示有英文影印版,“E”表示有英文电子版,“电”表示有中文电子版(不包括超星格式),有删除线的表示该版本已绝版。请不要向我要索要电子版,并且大部分电子版属于盗版,慎重下载。同时因为世界总在变化,我不能保证你读到此文时这些信息依然有效。[Deitel94]H.M.Deitel,《C程序设计教程(CHowtoProgram)》第二版,中。书中错误不少,不知道是原版的问题还是翻译的问题,但至少翻译版的排版一团糟,有点糟蹋好书了。[Prata04]StephenPrata,《CPrimerPlus(CPrimerPlus)》第五版,中E。“Primer”的名头太大了,以至于中文版干脆不翻译书名了。[Kelley97]AlKelley、IraPohl,《C语言教程(ABookonC:ProgramminginC)》,英。[Roberts94]EricS.Roberts,《C语言的科学与艺术(TheArtandScienceofC:)》,中英。虽然另类,但有很多创新值得回味。我正在学习他把图形库引入C语言教学的方法。[Harbison02]Harbison、Steele,《C语言参考手册(C:AReferenceManual)》第五版,英。其实,这本书是有中文版的,但为了您的健康,还是忘掉他吧,阿门……[Kernighan88]Kernighan、Ritchie,《C程序设计语言(TheCProgrammingLanguage)》第二版,中英E。这本书被简称为“K&R2”,并被尊称为C语言的“圣经”。Ritchie就是C语言的爸爸。[C99]ISO/IEC9899:1999,C标准1999年版,E。被简称为C99。可以这样描述它:“1.C99永远是对的;2.如果C99错了,请参看第一条。”可笑的是,我们的国家计算机等级考试二级考试的很多题目都是违背C99的。相信Ritchie来考二级也会被郁闷住。[Kernighan99]Kernighan、Pike,《程序设计实践(ThePracticeofProgramming)》,中英电。中英文对照阅读,又学知识又练英语。[Linden94]PetervanderLinden,《C专家编程(ExpertCProgramming)》,中E。这是一本行文非常幽默的书(可惜译文版把很多幽默都搞丢了,这也是没法的事情),因为书面上印着一条腔棘鱼,所以它在业界被戏称为“鱼书”。[Maguire93]SteveMaguire,《编程精粹─Microsoft编写优质无错C程序秘诀(WritingSolidCode:Microsoft'sTechniquesforDevelopingBug-FreeCPrograms)》,E电。网上很多地方传播的电子版写的名字是《WriteCleanCode》,这里替Maguire澄清一下。[Bryant02]Bryant、O’Hallaron,《深入理解计算机系统(ComputerSystems:AProgrammer’sPerspective)》,中英E。我一定要说,这本书的中译本是为数不多的翻译精品。[Koenig89]AndrewKoenig,《C陷阱与缺陷(CTrapsandPitfalls)》,中E电。因为年代久远,书中有些观点已经不合时宜,正好用来练习边读边批判。[林锐03]林锐、韩永泉,《高质量程序设计指南——C++/C语言》第二版,中电。我觉得这本书错误观点很多很多,正确的也很多很多,欢迎发表你的看法。[Weiss96]MarkAllenWeiss,《数据结构与算法分析——C语言描述()》第二版,中。[Cormen01]Cormen、Leiserson、Rivest、Stein,《算法导论(IntroctiontoAlgorithms)》第二版,英E。[Knuth98]DonaldKnuth,《计算机程序设计艺术(TheArtofComputerProgramming)》I、II、III卷,中英。凡发现书中错误的第一个读者都将得到作者亲笔签发的2.56美元的支票。Knuth退隐后闲赋在家,江湖风传第IV卷马上出版,他正在写第V卷(计划一共写VII卷)。但愿你不要让Knuth的写作速度大于你的阅读速度。

热点内容
c编译器怎么改成中文版 发布:2025-08-06 03:38:04 浏览:740
我的世界别人的服务器 发布:2025-08-06 03:37:54 浏览:1
php存储图片上传 发布:2025-08-06 03:37:18 浏览:556
oracle存储过程时间 发布:2025-08-06 03:10:49 浏览:164
linux命令在哪 发布:2025-08-06 03:10:19 浏览:662
如何下载安卓版街霸5 发布:2025-08-06 03:01:20 浏览:403
名爵3存储卡怎么放车上 发布:2025-08-06 02:57:08 浏览:184
访问瑞士 发布:2025-08-06 02:38:44 浏览:128
搭路服务器怎么建 发布:2025-08-06 02:19:16 浏览:456
ram中存储的数据在断电后丢失 发布:2025-08-06 02:17:34 浏览:418