题目描述
设有说明语句:
struct List
{ int data ; List * next ;
} ;
List *head;
head是有序单向链表的头指针。请编写函数:
void Count( List * head );
计算并输出链表数据相同值的结点及个数。例如,若数据序列为:
2 3 3 3 4 5 5 6 6 6 6 7 8 9 9
则输出结果:
data number
3 3
5 2
6 4
9 2
输入
多组测试样例,每组输入一行。行末元素为-1表示该组测试样例输入结束。
最后一行单独输入一个-1表示测试结束
输出
输出链表数据相同的结点及个数,结点值与个数之间用空格隔开
样例输入
0 9 4 8 8 2 4 5 5 1 7 1 1 5 -1
1 4 2 3 2 2 1 6 8 5 7 6 1 8 9 2 -1
-1
样例输出
4 2
8 2
5 3
1 3
1 3
2 4
6 2
8 2
提示
输出的值的顺序应遵循输入的顺序。