刘老师为啥不用C 语言来讲呢?
来源:4-8 索引堆(Index Heap)
慕斯卡3162337
2018-10-13
在大学里面就学的C语言,而且C语言很强大 很想老师通过C语言来讲课。
写回答
3回答
-
liuyubobobo
2018-10-13
实际上,我的后续课程,从《看得见的算法》开始,到《玩转数据结构》,都会使用Java语言,连C++语言都抛弃了:)
不使用C/C++不是因为这些语言不够强大,而是因为C/C++语言编写需要顾及太多语言层面的内容,而不仅仅是算法或者数据结构本身。比如内存管理,比如指针,等等等等。实际上,所有的“高级语言”,都是为了让开发者尽量少的“操心”底层机制的问题,而尽量多的去考虑上层逻辑:)
至于C语言,除非讲操作系统,否则我肯定不会选用C语言。因为C语言连面向对象的基本语法支持都没有。通过这个课程的学习,你也应该能看到,绝大多数数据结构,都是适用于面向对象的编程范式的。每一个结构本身是一个类,每一个结构相应的操作是类中的方法。这一点,在我的《玩转数据结构》课程中,更会体现的淋漓尽致:)
当然,并不是说使用C语言无法使用面向对象的思想,但是,绕了一个大弯。其实,我个人认为,在当下,使用Java是最适合学习算法与数据结构的,其次是C++:)
50 -
算法请爱我emmm
2019-08-06
用c++/java学习数据结构还可以深刻体会一下面向对象的思想,也更加可以回归到数据结构和算法本身。
我个人觉得把c++写的类拆分了基本上就是c的代码啦
00 -
不务正业的码农
2018-11-16
老铁,只学C不能只会C啊,写C你不累吗。。。
00
相似问题