CSUF EPP - 你有什么想法(在添加到链接列表末尾时遇到麻烦)



SO 社区 我将在2020年1月参加CSUF。作为加州州立大学所有CS学生的要求,您必须参加考试才能升入高年级课程。该大学在他们的网站上发布了一个样本。

我正在尝试在这方面领先一步,完成样本考试并开始复习我可能需要的任何其他主题。到目前为止,我一直在考试中表现良好,但我的第二个问题遇到了问题。

问题2:https://i.stack.imgur.com/GO1pa.png

我已经访问了他们在问题中陈述的所有资源,除了IntListNode.cpp

提供的资源: https://i.stack.imgur.com/aqpfP.png

正如问题所述,我开始创建AddAtPosition(int elem,int pos(

void IntegerListt::AddAtPosition(int elem, int pos) {
if(pos == 0)
{
addFront(elem);
}else if (pos >= size())
{
IntListNode* temp = head;
while(temp != NULL)
{
if(temp->getNext() == NULL)
{
IntListNode* newElem = new IntListNode(elem, NULL);
temp->getNext() = newElem;
}
temp = temp->getNext();
}
}

这不是一个完整的函数:我只考虑了一个位置 [0] 和位置>= size((。

我的目标是在列表末尾添加一个节点。

我尝试使用各种不同的方法来解决这个问题,但似乎卡住了。

资源

http://www.fullerton.edu/ecs/cs/resources/files/test.cpp

http://www.fullerton.edu/ecs/cs/resources/files/IntegerList.cpp

http://www.fullerton.edu/ecs/cs/resources/files/IntegerList.h

http://www.fullerton.edu/ecs/cs/resources/files/IntListNode.h

-我没有修改资源上的任何内容...只添加了我的函数来添加一个元素-

我也明白

temp->getNext() = newElem;

这是不可能的,因为 getNext(( 返回一个值并且不可分配,但我找不到在不修改代码的情况下这样做的方法。

TL;博士

我正在尝试使用提供给我的资源在列表末尾添加一个节点,而不修改它们,但我觉得提供给我的资源不会帮助我完成此操作,除非我修改。

我的进度是上面的功能。

In IntListNode.h

void setNext(IntListNode* newnext) { next = newnext; }

在整数列表中.cpp

if(temp->getNext() == NULL) {
IntListNode* newElem = new IntListNode(elem, NULL);
temp->setNext(newElem);
}

相关内容

  • 没有找到相关文章

最新更新