这是我的功能;它应该计算列表中元素连续出现的次数。 它的作用是将它们加上一个。假设我们有1-> 1-> 2-> 3-> NULL;它应该输出2,但输出3。 任何帮助将不胜感激。
void consecutive(node *current) {
int con=0;
while (current && current->next) {
con++;
if (current->next==NULL)
break;
current=current->next;
}
cout<<"Number of adjacent appearances is : "<<con<<endl;
}
答案 0 :(得分:1)
当您不提供正在使用的结构/类时,很难提供帮助。如果要查找具有相同值的连续元素,可以执行以下操作:
void consecutive(node *current) {
int con=0;
if( current ) {
auto value = current->number;
for( current = current->next; current && ( current->number == value ); current = current->next )
++con;
}
cout<<"Number of adjacent apearances is : "<<con<<endl;
}