newbee
因为此函数返回值为bool类型,只能返回true或者false,所以必须有一个指针去指向它的前驱元素。至于为什么不直接将返回类型改为int,这样看起来更简单,这是因为老师编程面向的不仅仅是一个int类型,还可能是其他类型。另外,设置为bool类型更符合数据结构的思想。
我已经懂了,谢谢各位。
你看下.h文件的变量声明,声明的变量指针是写的*m_pList(有星号),而我们用的时候是m_pList(没星号),所以这里的m_pList[temp-1]是一个引用,于是preElem前面就要加星号,因为指针才能指向引用,或者被引用赋值。
因为locateElem函数要求形参是指针类型的,而priorElement函数中形参currentElem也是指针类型,所以不用加*
同问,我直接把*改成&了
退出重新登录试试
首先指出,函数只能调用,没有引用的说法,然后回答你的问题。
这条语句通过调用LocateElem()函数来返回*currentElem在顺序表中的位置。LocateElem()函数接受一个int类型的指针作为参数,因此在调用该函数时,应当传入一个int型指针变量,而currentElem就是一个int型指针,而不应该加*,*currentElem就是一个int型变量
因为索引从零开始,最后一个元素是length-1,不是length,比如说有4个元素,长度为四,索引分别为0,1,2,3,所以最后一个是4-1,而不是4
PTA 和 leetcode 都有数据结构的题目可以练习。 PAT是浙大老师创建的。leetcode是国外的网站