分享学习过程,感谢bobo老师感谢慕课网

来源:2-7 循环队列的实现

懒洋洋爱学习

2022-08-10 22:02:24

我今天再老师讲循环队列的代码前,自己先敲了一遍,根据前面动态数组和栈的学习,有了一些自己的思路,敲完感也不过如此嘛哈哈哈。然后再听老师讲的,emmmmmm,有些细节还有没考虑到的

比如,我自己在写toString方法,考虑到循环数组的特殊性,我最开始想的是给分情况讨论:1,tail>front时  2,tail<front时,第一种就和之前的类似,只需要把i=front即可,第二张当时没想明白,老师用了个很巧妙的求余的公式,这个公式之前见过,很好用。

最后,我运行自己的代码时,出了一些错误,最后在我强忍着难受的状态的,坚持debug,最后发现是把resize方法中 array = newArray,写成了 newArray = array,下意识的认为是将旧数组赋给新数组,最后能自己debug还是很有成就感的。


写回答

1回答

liuyubobobo

2022-08-11

大赞!感谢分享!


随便评论一下:


1)在需要的时候,做分类讨论挺好的。一方面是并不是所有的逻辑都能“统一”;另一方面是,能把类别分清楚,其实已经说明完全理解其中的逻辑了。这是最重要。而一些小的“trick”,其实并不是学习的重点:)


2)能 debug 太赞了!debug 是非常非常非常重要的能力。一个厉害的程序员,也无法做到一次性把代码写对。但一个厉害的程序员,能做到把代码调试正确的。不管是自己写的代码,还是别人写的代码。能够一步一步去根据程序的执行,找到程序的错误所在,并且分析出错误原因,进而改正,这个能力是极其重要的。这个能力本身已经超越算法和数据结构了,在计算机任何一个领域的学习中,这个能力都不可或缺:)


继续加油!:)

1

算法与数据结构

波波老师5年集大成之作,算法与数据结构系统学习,考试、面试、竞赛通用

2603 学习 · 1086 问题

查看课程