网站首页 > java教程 正文
如果现在有两个数组,用户需要我们把这数组要合在一起,要怎么弄呢?
我们要分析逻辑,只要你的逻辑思路是对的,实现起来就不难了,就怕没有思路,那实现就很难。按照思路编制出来,然后调试运行是不是达到的预期的效果。
来看下,首先我们考虑到2个数组,那么就要设置二个数组,无论是你预先设置,还是让用户输入,总是要有,另外我们还要有序,不可以插入就可以了。
差不多了,我们可以定义一个方法去实现,然后实例化就好了
代码如下:
def h_arrays(nums1, nums2):#自定义一个吧
new_num = []#一个新的数组来保存,你也可以用其中一个数组保存,根据实际来选择
i = j = 0
# 遍历两个数组,比较元素大小
while i < len(nums1) and j < len(nums2):#通过比较,我们把元素插入进new_num中
if nums1[i] <= nums2[j]:
new_num.append(nums1[i])#如果从大到小,就倒着来
i += 1#变量要增加,直到条件结束
else:
new_num.append(nums2[j])
j += 1
# 将剩余元素添加到结果中
new_num += nums1[i:]
new_num += nums2[j:]
return new_num
# 现在我们通过预设数组,你可以随机或者通过用户输入
nums1 = [1, 3, 5]
nums2 = [2, 4, 6]
print(h_arrays(nums1, nums2)) # 输出 [1, 2, 3, 4, 5, 6]
不同的实现,定义的方法有所不同,比如你不用新的数组,选择其中一个数组保存,从前从后插入,然后排序也是可以。只要结果达到预期就是成功,效率怎么样数据量少的时候也感觉不出来,多练就会发现新知识,掌握好编制方法。有兴趣就多练练吧。
猜你喜欢
- 2025-05-11 全局数组的结构分析(全局数组和局部数组)
- 2025-05-11 10秒合并800个表,VSTACK就是这么厉害!
- 2025-05-11 VBA实现将批量Excel文件中的工作表合并成一个工作表
- 2025-05-11 C语言之strcat字符串拼接函数(c语言字符串拼接函数实现)
- 2025-05-11 这几个动态数组函数,简单又高效(动态数组的方法)
- 2025-05-11 数据格式的转换方法,HSTACK函数重建数组
- 2025-05-11 Java归并排序算法(技术每天进步一点)
- 2025-05-11 如何零基础学习VBA——数组函数介绍
- 2025-05-11 新增工作表数据自动汇总到总表怎么弄?会用vstack函数轻松搞定!
- 2025-05-11 字符拆分与合并,学会套路很简单(字符怎么合并)
你 发表评论:
欢迎- 05-11全局数组的结构分析(全局数组和局部数组)
- 05-1110秒合并800个表,VSTACK就是这么厉害!
- 05-11VBA实现将批量Excel文件中的工作表合并成一个工作表
- 05-11C语言之strcat字符串拼接函数(c语言字符串拼接函数实现)
- 05-11这几个动态数组函数,简单又高效(动态数组的方法)
- 05-11数据格式的转换方法,HSTACK函数重建数组
- 05-11Java归并排序算法(技术每天进步一点)
- 05-11如何零基础学习VBA——数组函数介绍
- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)