输入两个整数n和x,在输入n个整数,创建不带头结点的逆序单链表,统计某个整数x在链表中的出现次数。
时间: 2024-05-11 19:19:26 浏览: 134
下面是 C++ 代码实现:
```
#include <iostream>
using namespace std;
struct Node {
int val;
Node *next;
Node(int x) : val(x), next(NULL) {}
};
int main() {
int n, x;
cin >> n >> x;
Node *head = NULL;
for (int i = 0; i < n; i++) {
int val;
cin >> val;
Node *newNode = new Node(val);
newNode->next = head;
head = newNode;
}
int count = 0;
Node *cur = head;
while (cur != NULL) {
if (cur->val == x) {
count++;
}
cur = cur->next;
}
cout << count << endl;
return 0;
}
```
首先读入整数n和x,然后按照题目要求创建逆序单链表,最后遍历链表统计x出现的次数。创建链表的过程中,我们采用头插法,每读入一个数就将其插入链表的头部,这样最后得到的链表就是逆序的。遍历链表时,如果当前节点的值等于x,则将计数器加1。最后输出计数器的值即可。
阅读全文