数据结构学习的深度
理论的学习——严蔚敏
具体的实现——高一凡
这是一个学习的线索,高一凡已经实现了,书上的代码也有人附上。我有必要再敲一遍么?肯定不用这么麻烦。但是最理想的,还是用某些思路来自己把实现过程操作一次。包括头文件的定义、数据的定义,然后再实现一回,那么有必要弄懂个来拢去脉,千丝万缕总得找到个头绪。我不以考试为目标,但总得自己找对路子,尽快的掌握好编程和提高编程。
自学看来得花时间和功夫!
**之前,贴了些代码,只是提醒自己多看代码,结合代码加深理解。看了好几遍也没个所以然,自己思考了一下,数据结构的意思就是把抽象的一堆东西或叫数据定义起来成结构(包括数据的定义、数据的基本操作),然后利用结构实现这些结构的一些算法。目前就看了线性表结构,第一个算法就是把两个线性表取并集。其中用到了来自C语言的精华的东西,感觉这是学计算机专业应该钻研的东东,不仅应知道是什么,还要知道怎么来的,计算机内是如何存储的,说到底呢,就是指针(指针变量、指针引用什么的)。下面是定义表操作时用到的其中一个操作:
Status GetElem(SqList L,int i,ElemType &e)
{ // 初始条件:顺序线性表L已存在,1≤i≤ListLength(L)。操作结果:用e返回L中第i个数据元素的值
if(i<1||i>L.length)
return ERROR;
e=*(L.elem+i-1);
return OK;
}
这段代码就是函数中引用指针变量的应用。多好的代码,要我写出这代码不如直接干掉我(真要命!),不过模仿还可以,先学学,说不定哪天就会用了,呵呵。
//今日寄语:天下无难事,只怕有心人
我计算机专业学得不好,还得自己补一补。现在叫我开发软件——扯淡,还早着呢!