① 怎样才能学好数据结构
一时间也写不出太具体的方法 就在网上为你找了一个前辈发的帖子 你看一下,肯定比我写的好。
-------------------------
学习数据结构这门课程至少要经历三个过程,方可真正
的掌握这门课程,得到一个满意的成绩。这个过程简单来说就是三个字:活→死→活。
首先,是一个学“活”的过程,就要要求我们对书中的每一个算法,能够在脑海中
建立起相应的模型,而不是死板的算法。比如树的遍历非递归算法,在入栈与出栈的过程
中,我们就要在脑海中形成访问树每个结点的过程,真正掌握住这个算法。这样,全书复
习下来,你的脑海中就有了整个数据结构的模型概念,对任何一个陌生的算法,将不感到
生疏和害怕。
有些同学到了此处就觉得数据结构已经学好,可以万事大吉了,其实这还远远不够
,如果参加考试,往往会拿不到高分,甚至还会纳闷,为何自己数据结构学的这样好,成
绩却不尽如人意,因此产生了批卷老师判错的想法。所以第二个过程,就是一个学“死”
的过程,这个过程要求,要记住书中的算法(功利一点就是要背诵会所报考学校的考试要
求的算法)。有的学校有别的特殊要求,也一并背会。如上海交通大学喜欢考平均复杂度
的分析这样的题目,我们在书上可以找到这样的分析一共十一个,全部背会,就免去了在
考场上分析的麻烦,如果连答案都能记住,那么,也不会因为粗心失分了。这一过程也许
有些枯燥,但却是最重要的过程,比如说背会了树的后序遍历非递归,遇到了像求某个结
点的所有祖先,两个结点的共同祖先这样的题,不用想,直接套用。这样才是考试的高分
的关键:在考场上,遇到考题,不用思考,直接从脑海中找匹配的算法,直接引用。
有了第二个过程的辛苦,我们就可以得到一个比较高的分数了,如果还想提高,就
要进行第三个过程,再学“活”的过程。这一个过程中就要要求我们,在第二步的基础上
,多进行思考,看看有哪些算法有共性,比如说:树的前序非递归遍历算法和图的深度优
先遍历算法是不是类似啊,有些什么不同,有些什么相同,为什么会相同;森林转化为二
叉树和图的生成树的算法也是这样,等等。总结出这种共性,这样就能正确有效的记忆算
法,同时,遇到难题不至于慌乱,能够从容下手解题。
对于总结共性问题上,这里举一小个例子,(呵呵,我当初总结出这个,并且和ka
oyan.com斑竹一具讨论确定后三天,就在2002年交大第一题考出类似东东)比如树的遍
历,不管是递归还是非递归,也不管是线索树,还是头结点有父母信息的树,它的遍历其实就是一个寻找到遍历的第
一个结点,然后再寻找它的后继结点的过程,我们归纳到此处,就可以试着总结一下三种
遍历的后继结点是哪个,有几种情况:
对于前序遍历,它的后继如下:
(1)若有左孩子,则后继是左孩子;
(2)若无左孩子,有右孩子,则后继是右孩子;
(3)若既无左孩子,又无右孩子,则是一片叶子;再讨论:
(a)若是其父母的左孩子,且父母有右孩子,则后继是父母的右孩子。
(b)若是其父母的左孩子,且父母无右孩子;
(c)若是其父母的右孩子。
b,c都表示这是某个节点的左子树前序遍历的最后一个节点,则需要找第一个有右子
树的“左祖先”(定义“左祖先”,即找第一个使得当前节点在这个祖先的左子树上),
然后后继就是这个祖先的右孩子。
对于中序遍历,它的后继如下:
(1)如有右孩子,后继是右孩子的最左下节点;
(2)若无右孩子,且是父母的左孩子,则后继就是父母;
(3)若无右孩子,且是父母的右孩子,则一直上溯到第一个“左祖先”(定义如前)
则后继就是这个祖先。若无这样的祖先,说明已经遍历完毕。
对于后序遍历,它的后继如下:
(1)若是父母的右孩子,则后继是父母;
(2)若是父母的左孩子,且父母无右子树,则后继是父母;
(3)若是父母的左孩子,父母有右子树,则后继是父母右子树的最先访问到的节点(
指向父母的右子树后,一直往左,若不行的话,往右一步,一直到叶子)
总结完了,想一想,我们还能得到哪些提示?经常有一类型题目,要求求某个结点
的直接前驱。其实求前序遍历的前驱和求后序遍历的后继是一样的,只不过把左换成右而
已,前序遍历的求后继和后序遍历的求前驱、中序遍历的求前驱和中序遍历求后继都有这
样的对称关系。因此,总结出共性的东西,许多题目就可以迎刃而解了。问一问读到这里
的读者,你现在能够自己在脑子里面,非常轻松地像上面那样,把这个例子里面的情况都
条理清楚地分析总结出来吗?如果现在还不行,到考试之前,你必须掌握到这种程度,才
能得到一个自己很满意的分数。
经过以上的三个过程复习,相信读者对数据结构的掌握就可以到达比较高的水平了
,如果参加考试,获得一个比较满意的成绩也很有希望了。当然,达到这一
步并不容易,大量的练习是真正掌握的必由之路。因此,我们建议大家能够下功夫把本书
中的题目完整地做一遍。能够真正把本书中的所有题都掌握,绝不仅仅意味着仅会了书中
这几百道题目,而是意味着对数据结构这门课程的理解,以及对问题的分析能力都有很大
的提高,这样在考场上即使遇到未曾见过的题目,也就可以从容应对了!
② 如何学好数据结构
先看书了解每种数据结构的基本概念,性质等
然后常试着不看书上的伪代码用语言写出相应数据结构的实现
如果不能完成,那先照书上伪代码打一遍,然后再能自己空手写出来
当你学完后要试着为你学过的数据结构分类
比如线型,树型,图等
另外基本的数据结构学完后试着学学高级数据结构,比如黑红树等
③ 怎样学好《数据结构》
<!--STATUS OK-->
<html>
<head>
<title>网络知道搜索_英语 缪语 </title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link href="/iknow1_0.css" rel="stylesheet" type="text/css">
<style>
#pg{font-size:14px;word-spacing:0px!important;word-spacing:4px;font-family:arial;text-align:left;height:30px;line-height:30px;margin:20px 0px}
.s{width:8%;padding-left:10px; height:25px;}
.f14{FONT-SIZE:14px}
.lklbe{color:#666666;}
a.lklbe:link,a.lklbe:visited{text-decoration:underline;color:#7777cc;}
.h5{height:5px;line-height:5px;}
.rga2,.rga4{right:-2px}
.tj2,.tj4{right:0px}
</style>
<script >
if (window.name == 'nw') { window.name = '';}
function ga(o,e){if (document.getElementById){a=o.id.substring(1); p = "";r = "";g = e.target;if (g)
{ t = g.id;f = g.parentNode;if (f) {p = f.id;h = f.parentNode;if (h) r = h.id;}} else{h = e.srcElement;f = h.parentNode;if (f) p = f.id;t = h.id;}if (t==a || p==a || r==a) return true;window.open(document.getElementById(a).href,'_blank')}}
function ss(w){window.status=w;return true;}
function cs(){window.status='';}
</script>
</head>
<body>
<div id="usrbar"><nobr><a href="http://..com/q?ct=24&cm=16&tn=ikusercenter#uscore" target="_blank"><strong>yhzking1991</strong></a> 初学弟子 一级(43)|<a href="/q?ct=24&cm=16&tn=ikusercenter#ask" target="_blank">我的提问</a>|<a href="/q?ct=24&cm=16&tn=ikusercenter#answer" target="_blank">我的回答</a>|<span id="mnum"></span>|<a href="http://www..com/">网络首页</a>|<script language="javascript">document.write('<a href="http://passport..com/?logout&aid=7&u='+escape(location.href)+'">退出</a>');</script></nobr></div>
<!--开始-->
<table width="750" border="0" cellspacing="0" cellpadding="0" class="hd"><tr>
<td width="146" valign="top"><a href="/"><img src="https://gss0.bdstatic.com/70cFsjip0QIZ8tyhnq/img/logo-.gif" border="0" alt="网络知道" width="137" height="46" vspace="3"></a></td>
<td><div id="tab"><a href="http://news..com/ns?cl=2&rn=20&tn=news&word=%D3%A2%D3%EF+%E7%D1%D3%EF&t=1" class="headTit">新闻</a><a href="http://www..com/s?cl=3&wd=%D3%A2%D3%EF+%E7%D1%D3%EF" class="headTit">网页</a><a class="headTit" href="http://post..com/f?kw=%D3%A2%D3%EF+%E7%D1%D3%EF&t=4">贴吧</a><font class="headTitB">知道</font><a class="headTit" href="http://mp3..com/m?tn=mp3&ct=134217728&lm=-1&word=%D3%A2%D3%EF+%E7%D1%D3%EF&t=2">MP3</a><a class="headTit" href="http://image..com/i?tn=image&ct=201326592&lm=-1&cl=2&word=%D3%A2%D3%EF+%E7%D1%D3%EF&t=3">图片</a><a class="headTit" href="http://ke..com/w?ct=17&lm=0&tn=WikiSearch&pn=0&rn=10&word=%D3%A2%D3%EF+%E7%D1%D3%EF">网络</a></div>
<table border="0" cellspacing="0" cellpadding="0"><tr><form action="/q" name="ftop" method="get">
<td nowrap> <input class=hdi maxlength=256 tabindex=1 size=42 name=word value="英语 缪语"></td><td><a href="http://www..com/search/_help.html">帮助</a></td></tr></table>
<div style="margin-top:4px"><input type="submit" tabindex=2 value="搜索答案" class="bnsrh"><input type="hidden" name="ct" value="17"><input type="hidden" name="pn" value="0"><input type="hidden" name="tn" value="ikaslist"><input type="hidden" name="rn" value="10"><input type="button" onclick="ask(ftop);" tabindex=3 value="我要提问" class="bnsrh" style="margin-left:8px"></div>
</form>
<form name="fask" action="/q" method="get"> <input type="hidden" name="ct" value="17"><input type="hidden" name="pn" value="0"><input type="hidden" name="tn" value="ikask"><input type="hidden" name="rn" value="10"><input type="hidden" name="word" value=""> <input type="hidden" name="cm" value="1"><input type="hidden" name="lm" value="394496"><input type="hidden" name="qf" value="1">
</form>
</td></tr>
</table>
<script language="JavaScript">function ask(fn){document.fask.word.value=fn.word.value;fask.submit();}</script>
<!--结束-->
<div id="main">
<!--[if IE]>
<script language="JavaScript">
var objmain = document.getElementById("main");
function updatesize(){ var bodyw = window.document.body.offsetWidth; if(bodyw >= 1016) objmain.style.width="976px"; else objmain.style.width="782px"; }
updatesize(); window.onresize = updatesize;
</script>
<![endif]-->
<div class="path"><a href="/">网络知道</a> > 搜索结果</div>
<div id="subline"></div>
<div id="sub">
<span class="tba1"></span><span>已解决问题</span><span class="tba3"></span>
<a href="/q?ct=17&lm=65536&tn=ikaslist&pn=0&rn=10&word=%D3%A2%D3%EF+%E7%D1%D3%EF">待解决问题</a><span class="tbb2"></span>
<a href="/q?ct=17&lm=131072&tn=ikaslist&pn=0&rn=10&word=%D3%A2%D3%EF+%E7%D1%D3%EF">投票中问题</a><span class="tbb2"></span>
</div>
<div class="h5"></div>
<div id="right">
<div style="color:#666666;text-align:right;">共搜到相关问题 1 项</div>
<div class="h5"></div>
<div class="h5"></div>
</div>
<div id="center">
<table border=0 cellpadding=0 cellspacing=0><tr><td class=f><a href="/question/11313842.html?si=1" target=_blank><font size=3>《古诗》<font color=#C60A00>英语</font>怎么样说?</font></a>
<br><font size=-1>“古诗”和“歇后语”和<font color=#C60A00>缪语</font>,用<font color=#C60A00>英语</font>该怎么样说呢?</font><br><div class="lklbe"><a href="http://passport..com/?detail&aid=7&default_tab=2&un=%D0%C7%C2%DE%A4%CE%D0%C7%E8%A8" class="lklbe" target=_blank>星罗の星瑷</a> - 2006-8-17 10:18 - 最佳回答者: <a href="http://passport..com/?detail&aid=7&default_tab=2&&un=%A6%A1%A6%A2%A6%A3%A6%A4%A6%A5%A6%A6" class="lklbe"
target=_blank>ΑΒΓΔΕΖ</a> - <a href="/browse/187?lm=9" class="lklbe">外语/出国</a></div></td></tr></table><br />
<div style="height:60px;width:100%;clear:both">
<table width="96%" height="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr><td style="font-size:14px;font-weight:bold;height:40px;width:70px;">相关搜索</td>
<td rowspan="2" valign="middle">
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td nowrap class="f14"><a href="/q?word=%E7%D1%D3%EF&ct=17&pn=0&tn=ikaslist&rn=10&srs=1&srsod=0">缪语</a></td>
<td nowrap class="s"></td>
<td nowrap class="f14"><a href="/q?word=%D3%A2%D3%EF%B7%AD%D2%EB&ct=17&pn=0&tn=ikaslist&rn=10&srs=0&srsod=1">英语翻译</a></td>
<td nowrap class="s"></td>
<td nowrap class="f14"><a href="/q?word=%D3%A2%D3%EF%CB%C4%BC%B6&ct=17&pn=0&tn=ikaslist&rn=10&srs=0&srsod=2">英语四级</a></td>
<td nowrap class="s"></td>
<td nowrap class="f14"><a href="/q?word=%D3%A2%D3%EF%D7%F7%CE%C4&ct=17&pn=0&tn=ikaslist&rn=10&srs=0">英语作文</a></td>
<td nowrap class="s"></td>
<td nowrap class="f14"><a href="/q?word=%D3%A2%D3%EF%D4%DA%CF%DF%B7%AD%D2%EB&ct=17&pn=0&tn=ikaslist&rn=10&srs=0">英语在线翻译</a></td>
</tr>
<tr>
<td nowrap class="f14"><a href="/q?word=%D3%A2%D3%EF%CC%FD%C1%A6&ct=17&pn=0&tn=ikaslist&rn=10&srs=0">英语听力</a></td>
<td nowrap class="s"></td>
<td nowrap class="f14"><a href="/q?word=%D3%A2%D3%EF%D1%A7%CF%B0&ct=17&pn=0&tn=ikaslist&rn=10&srs=0">英语学习</a></td>
<td nowrap class="s"></td>
<td nowrap class="f14"><a href="/q?word=%D0%C2%B8%C5%C4%EE%D3%A2%D3%EF&ct=17&pn=0&tn=ikaslist&rn=10&srs=0">新概念英语</a></td>
<td nowrap class="s"></td>
<td nowrap class="f14"><a href="/q?word=%D3%A2%D3%EF%B4%CA%B5%E4&ct=17&pn=0&tn=ikaslist&rn=10&srs=0">英语词典</a></td>
<td nowrap class="s"></td>
<td nowrap class="f14"><a href="/q?word=%B7%E8%BF%F1%D3%A2%D3%EF&ct=17&pn=0&tn=ikaslist&rn=10&srs=0">疯狂英语</a></td>
</tr>
</table>
</td></tr>
<tr><td></td></tr></table>
</div>
<div class="">
<div class="bg mt20 ">
<div class="rga1"></div><div class="rga2"></div>
<div class="p10" align="center">
<form action="/q" name="fbot" method="get">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td nowrap><input maxlength="256" tabindex=11 size="42" class="hdi" name=word value="英语 缪语"></td>
<td nowrap><a href="http://www..com/search/_help.html" target="_blank">帮助</a></td>
</tr>
<tr>
<td colspan="2">
<div style="margin-top:4px">
<input type="submit" tabindex=12 value="搜索答案" class="btn">
<input type="button" onclick="ask(fbot);" style="margin-left:8px" tabindex=13 value="我要提问" class="btn">
<input type="hidden" name="ct" value="17">
<input type="hidden" name="pn" value="0">
<input type="hidden" name="tn" value="ikaslist">
<input type="hidden" name="rn" value="10">
</div>
</td>
</tr>
</table>
</form>
</div>
<div class="">
<div class="rcb rga3"></div><div class="rga4"></div>
</div>
</div>
</div>
</div>
</div>
<script language="JavaScript">
var Msg_loopNum = 5;
function showMsg()
{
if(typeof redmsg != 'undefined') {
if (!redmsg || redmsg.length < 1) return;
document.getElementById('mnum').innerHTML = redmsg;
}else{
if(Msg_loopNum > 0) {setTimeout(function(){showMsg();},100);Msg_loopNum--;}
}
}
</script>
<script src="https://gsp0..com/8_UFsjip0QIZ8tyhnq/ms?ct=18&cm=3&tn=bmSelfUsrStat&mpn=13227114&un=yhzking1991"></script>
<SCRIPT>showMsg();</SCRIPT>
<div id="ft">&;2007 Bai</div>
<img src="http://c..com/c.gif?t=2&q=%D3%A2%D3%EF+%E7%D1%D3%EF&p=0&pn=1" style="display:none;"/>
</body>
</html>
④ 如何学好数据结构
其实我也是学数据结构的,说实在的,学这个东西,最重要不是难不难的问题,主要是看你怎么做。如果你是自学数据结构的话,最好在参考着关于数据结构的语言编程。例如你要选修的是数据结构的c++版,你就要买本c++教程,首先把语言学好了,才能保证你能够读懂数据结构的伪代码。当然学数据结构最主要的是算法,每学一章之后都要有一个完整的总结,都要能够利用书中所学的知识进行以下必要的编程(这个是必须的)否则相当与你没有学。你比如学数据结构要学单链表,那你首先应该了解怎么制作单链表,然后试着用编程的方法描述出来。当然了,学数据结构最主要的还是各个算法本身,对代码的要求不是特别的高,但是试 想如果你连代码都不会学,学算法只能是应付公事。所以一定要掌握代码。大学考试应该不会考你太难的代码,但是研究生入学考试肯定会考的。象我一个大学老师说她考研的时候就考了个堆排序的代码描述。所以学数据结构最重要的是培养你写代码的能力。力争把代码写好,前程会一片光明。
⑤ 怎么学好数据结构
数据结构作为大学计算机相关专业的学生来说是一门十分重要的课程,无论是以后算法思想的渗透,还是工作中程序代码的处理,都离不开数据结构的影子。但是因为数据结构知识较多,并且比较抽象,对于很多人来说学它就感到头疼。其实大可不必,数据结构的学习自然有其对应的方法。
还有一点,要想学习好数据结构,好的课程是必不可少的,如果大学老师讲的足够好的话完全可以带你领略数据结构的美丽风景,如果你想自学成才的话,推荐浙江大学陈越姥姥的课和清华大学邓俊辉老师的课,都十分透彻易懂。
⑥ 怎么才能学好数据结构
一个很简单的方法..学好数据结构..把那本书反复的看一百遍...我们班的一个人就是这样做的..只要你有那个耐心...你一定会学懂..学懂...呵呵...
⑦ 怎样学好数据结构
最好的方法就是用计算机语言——C,C++,Java等等,把里面的数据结构和算法实现了,那样才是透彻的理解和运用。
⑧ 怎么学好数据结构..
如果说C是一门编程语言的话,那么掌握了C也就仅仅掌握了一门编程的工具而已,要知道编程的工具有很多,JAVA,VB,C++ 都是编程工具而已
而想在软件上有所作为,那么学好数据结构是必须的,可以这样说,数据结构是内功,一般安排在学习C语言之后学习.掌握好了数据结构就可以掌握程序的内核,算法思想,这对计算机专业人事来讲是必须的.
数据结构的学习一定要多看书,把书认真的多看几遍,多理解上面的算法,多做练习,勤思考,清华大学严老师编的书是最好的,不过比较难,开始建议读一本自考的教材或者高等教育出版社的书比较好理解,自己能看懂,入门了在来看清华的那本,那本的算法是最经典的,,不可不看/
数据结构是计算机的核心课程,一般学习了C以后都要学习数据结构和操作系统,这样才能对计算机有个较深的认识.. 在研究生考试中,数据结构也是必考的,所以学好它是必须的!
⑨ 怎么才能学好数据结构
要理解算法的原理, 主要是会用算法 ,最好的办法将算法用到你的代码中去 , 那样你对算法才有根深的认识 ,祝你好运!
⑩ 如何学好数据结构
(转)
前面的话:轻舟曾经热衷于把自己复习时候遇到的问题和总结的经验分享给大家,不过
来了交大以后,发现这里卧虎藏龙,自己只不过是溪底小虾一个。于是放弃了以前出数
据结构笔记的打算,不过,最近又有许多同学问起我数据结构的事情,这里就把以前总
结的笔记的前言帖出来,但绝对不会有后续部分,希望大家见谅。
学习数据结构这门课程至少要经历三个过程,方可真正
的掌握这门课程,得到一个满意的成绩。这个过程简单来说就是三个字:活→死→活。
首先,是一个学“活”的过程,就要要求我们对书中的每一个算法,能够在脑海中
建立起相应的模型,而不是死板的算法。比如树的遍历非递归算法,在入栈与出栈的过程
中,我们就要在脑海中形成访问树每个结点的过程,真正掌握住这个算法。这样,全书复
习下来,你的脑海中就有了整个数据结构的模型概念,对任何一个陌生的算法,将不感到
生疏和害怕。
有些同学到了此处就觉得数据结构已经学好,可以万事大吉了,其实这还远远不够
,如果参加考试,往往会拿不到高分,甚至还会纳闷,为何自己数据结构学的这样好,成
绩却不尽如人意,因此产生了批卷老师判错的想法。所以第二个过程,就是一个学“死”
的过程,这个过程要求,要记住书中的算法(功利一点就是要背诵会所报考学校的考试要
求的算法)。有的学校有别的特殊要求,也一并背会。如上海交通大学喜欢考平均复杂度
的分析这样的题目,我们在书上可以找到这样的分析一共十一个,全部背会,就免去了在
考场上分析的麻烦,如果连答案都能记住,那么,也不会因为粗心失分了。这一过程也许
有些枯燥,但却是最重要的过程,比如说背会了树的后序遍历非递归,遇到了像求某个结
点的所有祖先,两个结点的共同祖先这样的题,不用想,直接套用。这样才是考试的高分
的关键:在考场上,遇到考题,不用思考,直接从脑海中找匹配的算法,直接引用。
有了第二个过程的辛苦,我们就可以得到一个比较高的分数了,如果还想提高,就
要进行第三个过程,再学“活”的过程。这一个过程中就要要求我们,在第二步的基础上
,多进行思考,看看有哪些算法有共性,比如说:树的前序非递归遍历算法和图的深度优
先遍历算法是不是类似啊,有些什么不同,有些什么相同,为什么会相同;森林转化为二
叉树和图的生成树的算法也是这样,等等。总结出这种共性,这样就能正确有效的记忆算
法,同时,遇到难题不至于慌乱,能够从容下手解题。
对于总结共性问题上,这里举一小个例子,(呵呵,我当初总结出这个,并且和ka
oyan.com斑竹一具讨论确定后三天,就在2002年交大第一题考出类似东东)比如树的遍
历,不管是递归还是非递归
,也不管是线索树,还是头结点有父母信息的树,它的遍历其实就是一个寻找到遍历的第
一个结点,然后再寻找它的后继结点的过程,我们归纳到此处,就可以试着总结一下三种
遍历的后继结点是哪个,有几种情况:
对于前序遍历,它的后继如下:
(1)若有左孩子,则后继是左孩子;
(2)若无左孩子,有右孩子,则后继是右孩子;
(3)若既无左孩子,又无右孩子,则是一片叶子;再讨论:
(a)若是其父母的左孩子,且父母有右孩子,则后继是父母的右孩子。
(b)若是其父母的左孩子,且父母无右孩子;
(c)若是其父母的右孩子。
b,c都表示这是某个节点的左子树前序遍历的最后一个节点,则需要找第一个有右子
树的“左祖先”(定义“左祖先”,即找第一个使得当前节点在这个祖先的左子树上),
然后后继就是这个祖先的右孩子。
对于中序遍历,它的后继如下:
(1)如有右孩子,后继是右孩子的最左下节点;
(2)若无右孩子,且是父母的左孩子,则后继就是父母;
(3)若无右孩子,且是父母的右孩子,则一直上溯到第一个“左祖先”(定义如前)
则后继就是这个祖先。若无这样的祖先,说明已经遍历完毕。
对于后序遍历,它的后继如下:
(1)若是父母的右孩子,则后继是父母;
(2)若是父母的左孩子,且父母无右子树,则后继是父母;
(3)若是父母的左孩子,父母有右子树,则后继是父母右子树的最先访问到的节点(
指向父母的右子树后,一直往左,若不行的话,往右一步,一直到叶子)
总结完了,想一想,我们还能得到哪些提示?经常有一类型题目,要求求某个结点
的直接前驱。其实求前序遍历的前驱和求后序遍历的后继是一样的,只不过把左换成右而
已,前序遍历的求后继和后序遍历的求前驱、中序遍历的求前驱和中序遍历求后继都有这
样的对称关系。因此,总结出共性的东西,许多题目就可以迎刃而解了。问一问读到这里
的读者,你现在能够自己在脑子里面,非常轻松地像上面那样,把这个例子里面的情况都
条理清楚地分析总结出来吗?如果现在还不行,到考试之前,你必须掌握到这种程度,才
能得到一个自己很满意的分数。
经过以上的三个过程复习,相信读者对数据结构的掌握就可以到达比较高的水平了
,如果参加考试,获得一个比较满意的成绩也很有希望了。当然,达到这一
步并不容易,大量的练习是真正掌握的必由之路。因此,我们建议大家能够下功夫把本书
中的题目完整地做一遍。能够真正把本书中的所有题都掌握,绝不仅仅意味着仅会了书中
这几百道题目,而是意味着对数据结构这门课程的理解,以及对问题的分析能力都有很大
的提高,这样在考场上即使遇到未曾见过的题目,也就可以从容应对了!