PTA数据结构编程题7-51,52,53

51

7-51

这道题目总体思路是先遍历两个链表,然后处理剩余数组的元素,最后再把处理结果放入第三个数组中输出即可。

如何遍历两个数组?

用双指针i,j

把小的元素先放入数组中,如果不等长,则是短的链表先走完,此时,同时遍历两个数组这件事情结束。

然后是处理剩余的元素,为什么剩余了?因为长链表还没有走完但是短链表走完了,所以还剩下一些长链表里面的元素没有被处理。

长的链表此时双指针的下标一定还小于数组的大小。由于是非降序数组,则是挨个放入,恰好从小到大排列。

52

7-52

输入部分与上一题一样,这里省略,

直接看核心部分。

还是用双指针来遍历。

由于是非降序数组,当一个数组的元素比另一个数组的元素小的时候,就要把小元素数组下标右移,当两个元素相等时,放入第三个数组中。

53

将输入的数组统一放在一个数组中,然后进行排序,直接可以输出中位数。

源码

相关推荐
XiHongShi20165 分钟前
cpuz分享,建议保存
单片机·学习
minglie16 分钟前
zynq中axi_dma的sg模式采集--PL搭建
学习
噜~噜~噜~23 分钟前
操作系统笔记-2.3.6 管程
笔记·操作系统
传奇开心果编程30 分钟前
【Rust入门知识点学与练】第3课:String 与 &str 的区别
开发语言·学习·rust
小雨笙笙1 小时前
机器学习:线性回归学习
学习·机器学习·线性回归
HugoStudio_SWAN2 小时前
洛谷 P1420 / P1179 / B4262 最长连号、数字统计与词频统计——统计的三种面孔
c++·学习·程序人生·算法
是隼人2 小时前
buuctf-pwn [HarekazeCTF2019]baby_rop2(64位ret2libc)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
aprilaaaaa3 小时前
(TC397 学习笔记)二、ICU和TIM的时钟计算
笔记·学习·fpga开发
wuyk5554 小时前
107.FreeRTOS 链表深度解析:从原理到面试满分答案
c语言·开发语言·数据结构·stm32·单片机·链表·面试
-dzk-4 小时前
【链表】LC 138.随机链表的复制
数据结构·链表