最新评论
3.02 P330★,中间一段,“(即它的左子树高度2减去右子树高度0)”,
这里第三次印刷的书上是:“(即它的左子树高度3减去右子树高度0)”,
到底是什么,没开读的,现在不知道
@24.小塒隱身
理论上网上书店到处都有卖了,实体书店可能未必。
Re:《大话数据结构》简体中文版第三次印刷后勘误 24.小塒隱身 2012-02-13 13:35
哥,第三次印刷哪里有卖的。我怎么找不到?(北京)
Re:《大话数据结构》简体中文版勘误 伍迷 2012-02-13 09:27
@风碎月
感谢指正,的确是错误。已经加入勘误!
Re:《大話資料結構》繁體中文版勘誤 伍迷 2012-02-13 09:26
@讀者PT
感谢指正,已经修改。
@甩掉裤衩凭风吹
感谢您的指正,的确是问题,已经加入勘误。
这个错误此前已经勘误过,见2.19的勘误内容,应该是编辑在修改时疏忽了,抱歉!
Re:《大话数据结构》简体中文版勘误 风碎月 2012-02-11 14:53
P234 图7-4-10 右下角那句“V2后再无V0的入边顶点,所以其taillink为空” taillink应该是headlink吧
Re:《大話資料結構》繁體中文版勘誤 讀者PT 2012-02-09 21:26
1.51 P235,圖7-4-10,V1點的陰影應該改為V2 ,修改結果見下圖
是253頁才對
Re:《大话数据结构》简体中文版第三次印刷后勘误 甩掉裤衩凭风吹 2012-02-08 13:54
有点小疑惑,第157页中间那副表格里,A节点的长子域是-1?它的长子域(B节点)应该是是1吧?我看的是第二版的书~
@甩掉裤衩凭风吹
没理解您的意思,能再解释一下您的问题吗?
@追夢
3.08 (本次改动仅限第三次印刷)P61,代码第三行,"if (!p || j>=i)",请将“=”去掉。P63,代码中间一行,,"if (!p || j>=i)",请将“=”去掉。P65,代码中间一行,"if (!p || j>=i)",请将“=”去掉。(kenly2007 提供)
注意是第三次印刷才有此错误!给您添麻烦了,抱歉!
正需要这样的书啊,盼在出个<<大话算法>>, 哈!
Re:《大话数据结构》简体中文版勘误 伍迷 2012-02-07 10:27
@iristrice
@闫丰
二位,我仔细阅读了您们的建议,此处代码的确不严谨,应该是按照闫丰朋友的说法修改。感谢!
Re:《大话数据结构》简体中文版勘误 伍迷 2012-02-07 09:55
@odgs
当j=6时,j由1到j-1就是指这个串T的前5个是ababa,通过观察,你会发现,前三个aba和后三个aba是相同的,所以next[6]=三个字母+1=4.
Re:《大话数据结构》简体中文版勘误 伍迷 2012-02-07 09:51
@study123
@数据结构初学
@odgs
KMP算法是这本书中,第一个比较复杂的算法,本身有难度,您们可以查阅其他相关书籍,我是研究了市面绝大多数算法书后,写出的。应该说,我的写法已经是比较容易理解的了。
但是对于一个复杂算法,初学者学习有困难,其实还是很正常的。希望克服畏难情绪,沉下心来仔细琢磨,一定可以弄明白它的原理。我当年也是这样学过来的。
老大,回上海没有?你们一家子还真能玩,出去旅游这么久
给你汇报一下,我软考通过了,多谢你的《大话数据结构》和《大话设计模式》,当初我就说么,这两本书是重头戏,哈哈。
不过不考试又提不起兴趣看数据结构了……
http://www.cnblogs.com/wormday/archive/2012/02/06/2339443.html
我是第三版,“P65,代码中间一行,"if (!p || j>=i)",请将“=”去掉。“我的没看到有if (!p || j>=i),而是有 if(!(p->next)||j>=i)
请问是将: if(!(p->next)||j>=i)改为: if(!(p->next)||j>i) 还是改为: if(!p||j>i)
Re:《大话数据结构》简体中文版勘误 iristrice 2012-02-05 02:22
[quote]伍迷:
@闫丰
我查看了一下,这两段代码应该没有问题。你要注意s.top1起始是-1。请设置断点跟踪调试来判断问题出在哪里。[/quote]
源代码确实是有问题的(因为我自己编写测试发现确实是traverseStack)会把top1的最后一个元素忽略掉,main函数的测试代码已经说明了问题:for循环了5次,traverseStack的输出值:
“栈中元素依次为:1 2 3 4 18 19 20” top1 打印出了1~4,栈中确实插入了5,却没打印出来。
修改方法有两种:
1、 i=-1; // 和起始位置一样
2、 while循环加等号,多循环一次即可
length的函数没时间实现,按照您的代码的结果,应该也是有问题的,您再看看
Re:《大话数据结构》简体中文版第三次印刷后勘误 甩掉裤衩凭风吹 2012-02-01 11:08
有点小疑惑,第157页中间,A节点的长子域是-1?它的长子域应该是B节点是1吧?我看的是第二版的书~
Re:《大话数据结构》简体中文版勘误 study123 2012-01-31 10:10
KMP算法的描述太烂了,希望能更详细
Re:《大话数据结构》简体中文版勘误 数据结构初学 2012-01-31 09:25
KMP算法那个数学公式的推出太跳跃了,看不懂。网上查资料
Re:《大话数据结构》简体中文版勘误 odgs 2012-01-22 22:23
年三十晚上上来问一下
首先祝老师新年快乐!
下面是我的问题
p140页在用例子讲解kmp算法时看得我很郁闷
一个例子t串 ababaaaba
第6,7,8,9步完全没看懂,虽然看字面很容易理解前缀后缀相等 next数组元素的值就等于相同的元素个数加1,关键的问题是这个t串的前缀后缀怎么得来的啊!!
比如书上讲的"当j = 6时,j由1到j-1的串是ababa,由于前缀字符aba与后缀字符aba相等".注意,这里不是才说了j由1到j-1的串是ababa那前缀都用了三个了aba那后缀不就是ba了吗怎么还是aba啊?
"当j = 7时,j由1到j-1的串是ababaa,由于前缀字符ab与后缀字符aa不相等,只有a相等."这里的前缀ab不是接着跟他后面的ab相同吗?
还有下面一个例子"aaaaaaaab"
"当j=9时,"j由1到j-1的串是"aaaaaaaa",由于前缀字符"aaaaaaa"与后缀字符"aaaaaaa"相等" 前缀都用了7个a了那后缀不就是只有一个a了吗怎么还是7个a呢?
我的问题的关键就是这个前缀的长度是不固定的通过例子也没看出什么划定前缀长度的法则,看得很是郁闷
比如说就拿一个串ababaa来说,怎么划分它的前缀和后缀?前缀是从哪里到哪里?得来的原则是什么?
Re:《大话数据结构》简体中文版勘误 伍迷 2012-01-17 09:35
@odgs
理论上,您说的也是有可能的。您不妨试着改造一下程序来测试一下。
Re:《大话数据结构》简体中文版勘误 伍迷 2012-01-17 09:28
@iristrice
这里的2其实是本页最下方的“注2”的意思,让您误解了,抱歉!
@father
这只是一个例子,现实的需求很复杂,在要求考虑断电死机情况下,你说的也有一定道理。但这不影响我想表达的意思。谢谢!
Re:《大话数据结构》简体中文版勘误 odgs 2012-01-15 17:13
p74页 静态链表擦入新的元素 代码第11行
for(l=1;l<=i-1;l++)
k = L[k].cur;
这里是否可以不用循环实现?
因为静态链表是用数组实现的,数组中的每一个元素都是同类型也就是说内存中是定长的,所以寻址可以用数组下标实现.比如要在静态链表的第i位置擦入一个新的元素,就可以直接用i的前一个元素的cur值符给新元素的cur,然后i的前一个元素的cur值再改变为新的元素的下标.
L[新元素].cur = L[i-1].cur;
L[i-1].cur = L[新元素];
Re:《大话数据结构》简体中文版勘误 iristrice 2012-01-15 16:17
第一版,P72 第一段倒数第二行,当整个链表为空时,则为02,如图3-12-1,
图上写的却是0
是否此处的02(0平方)应是0呢?
Re:《大话数据结构》简体中文版第三次印刷后勘误 father 2012-01-15 10:32
程老师,个人觉得1.2节你数据结构怎么学的?中关于小菜的例子,客户排队模块,现实中由于可能要考虑系统掉电等意外恢复后还要求保存原来的客户排队信息,一般是不仅仅在内存中完成就可以的,所以小菜把排队信息存储在数据库也无不可,只是程序效率较差而已,但是换来了系统的可靠性。
错误是比第一版少了不少,就是不知道第3版啥时候出啊,哪个网站上可以买的到。
Re:《大话数据结构》简体中文版第三次印刷后勘误 dongdong168 2012-01-09 09:31
支持楼主原创,虽然很多人都满腹经纶,真正出好书的人却少。就像我一样,虽然在一些领域研究很深,却没有耐心出书来分享给大家,惭愧!同时鄙视那些专门写一些没有内涵的书骗同学们钱的人。
Re:小菜编程成长记系列 Jet_kk 2012-01-05 15:32
@伍迷
楼主,感谢您的无私奉献
我是一个刚刚学习编程的小菜,有一处地方我看不不明白
文中原型模式里面说的
public override Prototype Clone()
{
//创建当前对象的浅表副本.方法是创建一个新对象,
//然后将当前对象的非静态字段复制到该新对象.
//如果字段是值类型的,则对该字段执行逐位复制.
//如果字段是引用类型的,则复制引用但不复制引用的对象.
//因此,原始对象及其副本引用同一个对象
return (Prototype)this.MemberwiseClone();
}
然后客户端里面实现的
static void Main(string[] args)
{
ConcreatePrototype1 P1 = new ConcreatePrototype1("K");
ConcreatePrototype1 C1 = (ConcreatePrototype1)P1.Clone();
P1 = new ConcreatePrototype1("KK");
Console.WriteLine("Clone :{0} P1{1}",C1.Id,P1.Id);
Console.Read();
}
按照文中说的,原始对象及其副本引用同一个对象,但是为什么得出的结果是 Clone :K,P1KK呢?不懂~小菜请见谅!
Re:《大話資料結構》繁體中文版勘誤 伍迷 2011-12-30 09:10
@casperPP
您好,很抱歉。本书对数据结构的很多操作根据重要程度都有做过删减,正好这两个資料操作是没有在书中实现的,希望您可以自行解决。根据您们的提议,我将来也考虑会增加一些重要但被删减的内容。
Re:《大話資料結構》繁體中文版勘誤 casperPP 2011-12-29 15:25
你好,我是繁體版的讀者。我有個問題,不知算不算書本有誤。
在第六章,P.167時,有說明樹的資料操作有 InsertChild 和 DeleteChild。但是在書本上找了好久都沒見到有說明,程式碼裏也沒有寫怎麼實作。這是作者不小心忘了呢?還是故意留給讀者,要讓讀者自行實作的呢?
Re:《大话数据结构》简体中文版勘误 midgard 2011-12-24 15:11
P329, 最后一段, 第一句 “看图 8-7-2, 为什么图1是平衡二叉树,而图2却不是呢?” 图1 也不是平衡二叉树呀。 58, 88 的左右子树高度已经相差2了。
Re:《大话数据结构》简体中文版勘误 伍迷 2011-12-20 09:29
@kenly2007
这个错误仅在第三次印刷中出现(是我和与编辑沟通出现的问题),感谢指正,已经在勘误中提交。
Re:《大话数据结构》简体中文版勘误 伍迷 2011-12-20 09:05
@一白三千里
感谢您的指正,我已经更改了下载的代码。
Re:《大话数据结构》简体中文版勘误 shiney 2011-12-19 17:09
楼上,那是j>i吧,第一版里面是j>i,是对的
Re:《大话数据结构》简体中文版勘误 shiney 2011-12-19 16:57
程老师,第一版的P63,应该是在L中第i个位置之后插入新的数据元素吧。
Re:《大话数据结构》简体中文版勘误 kenly2007 2011-12-18 10:47
2011年 12 月 第3次印刷的
大话数据结构里面
第61页
在 GetElem 函数中
下面这段
while(p&&j<i)
{
p = p->next;
++j;
}
if(!p || j>=i)
return ERROR; //这个函数 每次都会执行到这里,不知道我有没有理解错唔 请多多指教。
后面的几个操作函数,也有类似的代码。
Re:《大话数据结构》简体中文版勘误 一白三千里 2011-12-14 20:27
刚开始看 第一个代码 线性表的顺序存储
代码 SqList Lb; 定义放在后面
在c的标准里面是有问题的
变量的定义应该在代码前面
否则 vc 6.0 会报错
不懂作者为什么要在后面定义,
反正都要用定义到前面不行吗
有些编译器 就不能理解这个
就会报错
就好像我写驱动
上次就是变量定义位置导致的错误
让我找了半天
Re:《大话数据结构》简体中文版勘误 wallwind 2011-12-12 08:59
@伍迷
看来我的visio功力有待提升啊!
Re:《大话数据结构》简体中文版勘误 伍迷 2011-12-12 08:57
@wallwind
Visio 2007
Re:《大话数据结构》样章试读 dfhf2007 2011-12-10 20:12
数据结构可以写的更深一点。。。。。。。
Re:《大话数据结构》简体中文版勘误 wallwind 2011-12-09 22:58
想知道楼主用什么画图的?
想知道楼主用什么画图的?
Re:《大话数据结构》简体中文版勘误 buzy 2011-12-09 20:34
我本来想买第二版,但是错误多了就一直没敢买,等着第三版出来。想问下第三版应该错误纠正了吧
@kimjuny
请看我的后续下篇:凭什么要用面向对象编程(补充)