仅仅熟练掌握程序设计语言并不能成为好的程序员。对于许多问题,如果没有好的算法,计算机只能低效地解决,甚至无法解决。因此,好的程序员,还应该对程序的灵魂---算法有较好理解并能灵活应用。
本课程要讲授的就是枚举、二分、递归、分治、动态规划、搜索、贪心这七种基本的通用算法。各种复杂算法问题的解决,都可能用到这些基本的思想。
本门课程面向需要进一步提高编程和算法水平的学习者。要求学习者已经掌握C语言,以及基本的程序设计思想,如简单排序、简单的递归。
本课程中一部分的例题,难度与中学信息学奥赛NOIP提高组的较难题相当,也和ACM国际大学生程序设计竞赛中的中等题相当。掌握了本课程的内容,学员的算法水平和实现能力将超过国内大部分高校计算机专业本科毕业生。
本课程作业和考试网址:cxsjsxmooc.openjudge.cn
郭炜老师还在中国大学MOOC开设另外三门好评如潮的4.9分高分课程,请不要错过:
1)程序设计与算法(一)C语言程序设计(国家精品)
0基础学习者应该先学习这门课程
2)程序设计与算法(三)C++面向对象程序设计(国家精品)
算法基础课中用到了一些面向对象的知识,不明白的可以先看看这门课
3)实用Python程序设计(强烈推荐,Python的百科书式大全课程,入门、提高均非常适合!)
1.通过本课程学习,有能力解决中学生信息学奥赛NOIP提高组的较难题,或ACM国际大学生程序设计竞赛中的中等题。
1.熟练掌握C语言
2.掌握基本的程序设计思想,如简单排序、简单的递归。
3.有C++语言类和对象的概念,会用C++的STL
为积极响应国家低碳环保政策,2021年秋季学期开始,中国大学MOOC平台将取消纸质版的认证证书,仅提供电子版的认证证书服务,证书申请方式和流程不变。
认证证书申请注意事项:
2.完成实名认证并支付后,系统将自动生成并发送电子版认证证书。电子版认证证书生成后不支持退费。
高等教育出版社《算法基础与在线实践》,刘家瑛,郭炜,李文新编著
此书和课程内容配套,课程中大部分例题在书中均有详解。
1.本课程的作业和考试形式是怎样的?
答:本课程的作业,以及最后的期末考试,形式都是在北京大学在线程序评测系统openjudge.cn上提交程序,由系统自动评判正误。程序不能有丝毫错误。这种形式对于提高编程能力极其有效。
由高教社联手网易推出,让每一个有提升愿望的用户能够学到中国知名高校的课程,并获得认证。