15 回答
TA贡献1798条经验 获得超3个赞
建议初学数据结构的同学直接使用C,绝不建议使用Java。C能让你进一步了解底层的代码的实现和算法思想,Java封装太深,让人很容易忽略底层代码(底层代码不容易看到)。对于算法我建议使用C++或是Java,算法侧重思想和实现,语言其次了(在不考虑算法性能的情况下)。如果可以最好都用C,会是你未来受益无穷。
TA贡献1835条经验 获得超7个赞
这取决于你打算从练习中学到什么,算法很多情况下是语言无关的,但是如果想理解很基本的数据类型数据结构的操作(比如数组和链表为什么在不同领域分别有不可替代的用处),那最好就绕过已经对这些基本结构进行过的封装。java c++已经对集合类型做了很不错的封装,有的c库也做了这样的事情,所以更多的应该是去绕过这些已经实现了的API用简单数据类型配合控制、循环、函数等机制去实现,而不太应该说绕过某个语言
TA贡献1785条经验 获得超4个赞
最近我要复习算法的东西,我使用 Golang。
算法应该是比语言更高一层的东西,你能明白算法的思想,随便换一种语言你都应该能实现。
假设某种算法你只能在特定的一个语言下实现,那么你也只能算是学会语言,而不是算法。
TA贡献2051条经验 获得超10个赞
为什么要用C?国外入门都用python,因为简单。所以你考虑今后会用什么语言,显然Java更具有优势,而且学数据结构就学数据结构,Java具有更好的封装性,更简单方便。
TA贡献1883条经验 获得超3个赞
支持以上全部争论。
C语言挺好的,但是也有一些缺点,比如到了hash那里,用C就稍微有点麻烦。Java太大了,封装太多。还是那句老话:程序=数据结构+算法。语言上没必要纠结,你觉得什么语言熟就用什么。
添加回答
举报