队列还好点,栈的编码操作也凑合,线性表链表、树有点惊心胆颤了。数据结构的概念性东西比编码要有趣多了。等过两年考研时候再来听吧,先搁置一段时间。
2016-10-14
int List::LocateElem(Node *pNode){
Node *currentNode = m_pList;
for (int i=0; i<m_iLength; i++) {
if (currentNode->next->data == pNode->data) {
return i;
}
currentNode = currentNode->next;
}
return -1;
}
Node *currentNode = m_pList;
for (int i=0; i<m_iLength; i++) {
if (currentNode->next->data == pNode->data) {
return i;
}
currentNode = currentNode->next;
}
return -1;
}
2016-10-12
bool List::GetElem(int i,Node *pNode){
if (i<0||i>m_iLength) {
return false;
}
Node *currentNode = m_pList;
for (int j=0; j<i; j++) {
currentNode = currentNode->next;
}
pNode->data = currentNode->next->data;
return true;
}
if (i<0||i>m_iLength) {
return false;
}
Node *currentNode = m_pList;
for (int j=0; j<i; j++) {
currentNode = currentNode->next;
}
pNode->data = currentNode->next->data;
return true;
}
2016-10-12
已采纳回答 / 黑巫师0
头结点只是一个牵头的作用,可以通过头结点来顺藤摸瓜找到链表中的所有元素,但本身并没存储有意义数据,所以作为前驱也就没有什么意义,因此不用头结点作前驱。希望能帮到你~
2016-10-08
已采纳回答 / 风起了_
m_pList是一个Node*对象,这是对的。next只是一个数据成员,next只是一个指向Node类型的指针,指向下一个结点“在构造函数里面已经m_pList->next = NULL”这是初始化的时候,并没有插入任何元素,当然应该置为空。插入元素之后,就不会再为空了。
2016-09-29