问答题 已知一个单链表中每个结点存放一个整数,并且结点数不少于2,请设计算法以判断该链表中第二项起的每个元素值是否等于其序号的平方减去其前驱的值,若满足则返回ture,否则返回false。 【西安电子科技大学2000软件二(10分)】
【正确答案】正确答案:判断结点的元素值是否等于其序号的平方减去其前驱的值,主要技术问题是结点的序号和前驱及后继指针的正确指向。核心语句段如下: while(p) IIp初始指向第2个元素结点 if(p->data==i*i-pre->data){i++;pre=p;p=p->next} //符合要求,i初值为2 else{cout<<“结点的值不等于其序号的平方减去前驱的值”; return false;)
【答案解析】