为了账号安全,请及时绑定邮箱和手机立即绑定

感觉C++好坑,不适合作为数据结构和算法的实现啊

感觉C++好坑,不适合作为数据结构和算法的实现啊

繁星点点滴滴 2019-04-06 08:31:33
我知道问题比较傻逼。情况是这样的,我们学校用C++作为数据结构的实现语言。然后,我写的很痛苦。原因很简单、我对这个语言不熟。但当我请教一个比较熟的人的时候,面对template+友元+stl的类库,我基本就残了。我发现C++的细节实在好多。作为数据结构跟算法的实现,我感觉我的大部分时间花费在语法上面了。当然我知道我的语法不熟是个重点。但是,跟其他语言相比它实在、有些麻烦为什么还是选它做教材?---|---|---|---|---|---|---|--首先感谢一下回答者我再完善一下问题。我的老师,基本是给个头文件。让我们实现,其中包括template,friend,这个确实不能算特性多。不过这两个真的有点复杂。。我在考虑自己用C实现,不过有点顾虑考试是C++的。现在的情况是,都说数据结构重要,得好好学。但是在学什么呢?算法那部分我能感受的到。但是数据结构,真的模糊啊。学的应该是怎么将实际问题中的数据,抽象成通用方便的,有组织的数据吧?这个应该是解决实际问题的一部分吧?看到几个网友提到了python,ruby对于数据结构的要求问题。我觉得如果说“数据结构”,只有链表,堆栈什么的,那我没话说。但是看定义“数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成”(百度百科的)我觉得数据结构学的应该是怎么整理数据,把它结构的化的一种理论,然后这种理论显然应该基于大量实践。而上课给我的感觉,就是照书来,有些数据结构,真的是感觉生搬硬套的用某种东西。其实这个问题更多的是在想讨论教育问题。我感觉教材选用C++或者还有些是用java,是因为用的人多,工业界需要,而不是这个语言真的完全适合拿来讲计算机的理论。而大多数的回答者是在批评我没有好好学习C++、没有好好看书。理由集中在C++和C很好了。当然我之前的表述是很糟糕。而大家的意图就变成了,如何帮我好好完成那门课。其实这个问题更像,“哪个语言是世界上最好的语言”,不过在这儿就是哪个语言是最适合用来教"数据结构"的。
查看完整描述

2 回答

?
森栏

TA贡献1810条经验 获得超5个赞

我们打ACM的时候。。。基本都用的C++,ACM比赛里的数据结构已经足够复杂和偏门了,C++表现的都很完美(你要说ACM的代码用不到实现工程上这个我承认,但是改起来也不是什么太大的工程)。。。我觉得LZ需要的是足够的实践,而不是费时间找一种新的语言来。。。一点浅见,轻拍:-)
                            
查看完整回答
反对 回复 2019-04-06
?
万千封印

TA贡献1891条经验 获得超3个赞

                                    问题在于 想的是学习数据结构与算法,而行动上在实践项目,忘记模板友元stl,只用c++ 中 属于 c 的那块
                            
                            
查看完整回答
反对 回复 2019-04-06
  • 2 回答
  • 0 关注
  • 318 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信