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

51

7-51

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

如何遍历两个数组?

用双指针i,j

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

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

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

52

7-52

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

直接看核心部分。

还是用双指针来遍历。

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

53

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

源码

相关推荐
我不会编程55514 小时前
Python Cookbook-5.1 对字典排序
开发语言·数据结构·python
云上艺旅15 小时前
K8S学习之基础七十四:部署在线书店bookinfo
学习·云原生·容器·kubernetes
你觉得20515 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义下载方法
大数据·人工智能·python·gpt·学习·机器学习·aigc
owde15 小时前
顺序容器 -list双向链表
数据结构·c++·链表·list
第404块砖头15 小时前
分享宝藏之List转Markdown
数据结构·list
蒙奇D索大16 小时前
【数据结构】第六章启航:图论入门——从零掌握有向图、无向图与简单图
c语言·数据结构·考研·改行学it
A旧城以西16 小时前
数据结构(JAVA)单向,双向链表
java·开发语言·数据结构·学习·链表·intellij-idea·idea
无所谓จุ๊บ16 小时前
VTK知识学习(50)- 交互与Widget(一)
学习·vtk
FAREWELL0007516 小时前
C#核心学习(七)面向对象--封装(6)C#中的拓展方法与运算符重载: 让代码更“聪明”的魔法
学习·c#·面向对象·运算符重载·oop·拓展方法
吴梓穆17 小时前
UE5学习笔记 FPS游戏制作38 继承标准UI
笔记·学习·ue5