当前位置: 首页 > news >正文

AcWing 3709:单链表节点交换 ← 四川大学考研机试题

【题目来源】
https://www.acwing.com/problem/content/3712/

【题目描述】
输入一个单链表,依次交换前2个数,第3、4个数,第5、6个数,…,以此类推,直到操作完整个链表。
如果链表长度是奇数,则最后一个数不用操作。
输出交换之后的链表。

【输入格式】
第一行包含整数 n,表示节点数量。
第二行包含 n 个整数,表示每个节点的值。

【输出格式】
共一行,输出交换后的链表。

【数据范围】
1≤n≤100,
节点取值范围 [1,100]。

【输入样例】
5
1 2 3 4 5

【输出样例】
2 1 4 3 5

【算法分析】
本题是四川大学考研机试题。
在编码时,不要一看到单链表,就去用链式结构实现,这样就势必增加了编码复杂度。可以考虑用数组模拟实现,可大大简化编码难度。

【算法代码】

#include <bits/stdc++.h>
using namespace std;const int maxn=105;
int a[maxn];int main() {int n;cin>>n;for(int i=1; i<=n; i++) cin>>a[i];int t=n;if(n%2!=0) t--;for(int i=1; i<t; i+=2) swap(a[i],a[i+1]);for(int i=1; i<=n; i++) cout<<a[i]<<" ";
}/*
in:
5
1 2 3 4 5out:
2 1 4 3 5
*/





 

http://www.lryc.cn/news/259771.html

相关文章:

  • RocketMQ源码 Broker-ConsumerFilterManager 消费者数据过滤管理组件源码分析
  • 数据挖掘-07-航空公司客户价值分析(包括数据和代码)
  • 浏览器 css 默认的字体图表
  • JAVA:注册表窗口的实现
  • Liunx Centos 防火墙操作
  • VirtualBox 和 Vagrant 快速安装 Centos7 报错
  • 使用Python进行数学四则运算
  • 成都工业学院2021级操作系统专周课程设计FCFS,SSTF,SCAN,LOOK算法的实现
  • 【51单片机系列】矩阵按键扩展实验
  • 大数据云计算——Docker环境下部署Hadoop集群及运行集群案列
  • 计算机网络链路层(期末、考研)
  • 洛谷 P8794 [蓝桥杯 2022 国 A] 环境治理
  • 力扣面试150题 | 买卖股票的最佳时期
  • uniapp 之 图片 视频 文件上传
  • MIT线性代数笔记-第28讲-正定矩阵,最小值
  • Python:五种算法RFO、GWO、DBO、HHO、SSA求解23个测试函数
  • 如何参与开源项目
  • twitter开发如何避坑
  • 人工智能算法合集
  • PythonStudio:一款国人写的python及窗口开发编辑IDE,可以替代pyqt designer等设计器了
  • 大模型应用_FastGPT
  • elasticsearch|大数据|elasticsearch的api部分实战操作以及用户和密码的管理
  • Android多进程和跨进程通讯方式
  • 通过Jenkins将应用发布到K8s1.24.3
  • 正则表达式入门与实践
  • C++初阶(十六)优先级队列
  • 深入探索C语言中的二叉树:数据结构之旅
  • 如何发现服务器被入侵了,服务器被入侵了该如何处理?
  • CSDN一键注释功能
  • 基于JAVA的校园电子商城系统论文