思成出品: 数据结构视频课程06-1

数据结构是编程的基础,大家一定要掌握哦。介绍数据结构,使用C语言做例子。本讲是队列。希望对大家有帮助!



请点击下面的链接在线观看:

====================
点击这里在线观看
====================

回馈老师:你们的每一个留言都可能温暖老师的心,你们的每一次的关注都会是我们老师录制新视频的动力,你们每一次点击广告老师的辛劳都会收到回报,所以不要吝啬。如果你羞于言辞,就请点击广告帮助老师增加收入。所有老师的广告都在视频教程的左边。也请宣传我们的辛勤耕耘的老师.

评论

关于思成老师的数据结构6,有一个C的数组问题,请指教。

这段代码:
#define MAX_SIZE 2
int queue[MAX_SIZE];
...
int InQueue(int value)
{
//这里判断,我觉得有问题
if(rear >= MAX_SIZE)
return 0;
rear ++;
queue[rear] = value;
return 1;
}
对于if判断力的条件rear >= MAX_SIZE,我觉得“=”不应该要。因为:
1、逻辑上,队列大小是10,rear应该最大为9
2、会造成数组越界,当rear=10,queue[10]就越界了。同时我还发现VC++6.0对此是不报错和警告,查资料原来是C/C++并不会进行越界检查,需要程序员自己检查,而且越界会存在潜在的危险。(如果用Visual Stdio则会运行时报错)。
如有不对,请予指正。