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

51

7-51

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

如何遍历两个数组?

用双指针i,j

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

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

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

52

7-52

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

直接看核心部分。

还是用双指针来遍历。

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

53

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

源码

相关推荐
wan5555cn34 分钟前
国产电脑操作系统与硬盘兼容性现状分析:挑战与前景评估
人工智能·笔记·深度学习·机器学习·电脑·生活
派森先生35 分钟前
sk08.【scikit-learn基础】--『监督学习』之K近邻算法
学习·scikit-learn·近邻算法
励志不掉头发的内向程序员38 分钟前
【Linux系列】解码 Linux 内存地图:从虚拟到物理的寻宝之旅
linux·运维·服务器·开发语言·学习
摇滚侠2 小时前
Spring Boot 3零基础教程,创建第一个 Spring Boot 3 应用,Spring Boot 3 外部配置,笔记03
java·spring boot·笔记
_OP_CHEN4 小时前
C++基础:(十二)list类的基础使用
开发语言·数据结构·c++·stl·list类·list核心接口·list底层原理
谷歌开发者6 小时前
Web 开发指向标 | Chrome 开发者工具学习资源 (一)
前端·chrome·学习
本郡主是喵8 小时前
用 TypeScript 进行 Truffle 测试
学习·区块链
武文斌779 小时前
复习总结最终版:单片机
linux·单片机·嵌入式硬件·学习
(●—●)橘子……9 小时前
记力扣2009:使数组连续的最少操作数 练习理解
数据结构·python·算法·leetcode
iナナ10 小时前
Java优选算法——位运算
java·数据结构·算法·leetcode