输入一个单链表,依次交换前2个数,第3、4个数,第5、6个数,…,以此类推,直到操作完整个链表。
如果链表长度是奇数,则最后一个数不用操作。
输出交换之后的链表。
输入格式
第一行包含整数 n,表示节点数量。
第二行包含 n个整数,表示每个节点的值。
输出格式
共一行,输出交换后的链表。
数据范围
1≤n≤100,
节点取值范围 [1,100]。
输入样例:
5
1 2 3 4 5
输出样例:
2 1 4 3 5
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin>>n;
int w[n+10];
for(int i = 0;i<n;i++)
cin>>w[i];
int e = n;
if(e%2==1)
e--;
for(int i = 0;i<e;i+=2)
{
int temp = w[i+1];
w[i+1] = w[i];
w[i] = temp;
}
cout<<w[0];
for(int i=1;i<n;i++)
cout<<" "<<w[i];
}