导航:首页 > 编程语言 > python遍历两个数组

python遍历两个数组

发布时间:2024-11-24 11:49:21

‘壹’ python 如何找出两个list中的相同元素

这个问题有多种解法,最常见的是brute-force 也叫暴力枚举法,也就是把两个list当中的每个元素都取出来进行两两比较,直到找到相同元素。设第一个数组的长度为n,第二个数组的长度为m,则时间复杂度为O(n*m),空间复杂度为O(1)
但是个问题常见的解决方法是哈希表。在Python当中有Dictionary这种数据类型,其实是一个哈希表。运用这种数据类型,可以迅速检索到想要的元素。但这种方法需要存储一组元素,所以时间复杂度为O(n),空间复杂度为O(m)。
以下是程序:
def find_same_element(l1, l2):
dist = {}
for i in l1:
dist[i] = 1
for i in l2:
if dist.get(i) > None:
return i
return None

以下是检验
l1 = [1, 2, '34', 34, 5]
l2 = [4, 7, 8]
print find_same_element(l1, l2)
应当输出None
l1 = [1, 2, '34', 34, 5]
l2 = [4, 7, 8,5]
print find_same_element(l1, l2)
应当输出5

这个函数只能找到一个共同元素,如果两个list有多个相同元素则只能输出中间的一个。

这个问题常见于面试题,属于最简单的面试题目。需要给面试官说明的是,
第一,哈希表可以快速检索元素,
第二,python有独特的数据类型,
第三,多个共同元素的情况需要面试官告知如何处理,
第四,注意没有共同元素的时候的输出(程序中为None但面试官希望你能提出这个问题)

‘贰’ python如何遍历2个list

找两个list元素少的,index遍历完所有的,遍历完后,把此时的index记住。然后直接循环那个较长list的剩余部分。代码可以参考下面的

list1=[1,2,3,4,5,6,7]
list2=['a','b','c','d']
min_length=len(list1)iflen(list1)<len(list2)elselen(list2)
max_length=len(list1)iflen(list1)>len(list2)elselen(list2)
max_list=list1iflen(list1)>len(list2)elselist2
foriinrange(min_length):
printlist1[i]
printlist2[i]
forjinrange(i+1,max_length):
printmax_list[j]

‘叁’ python怎么循环两个列表

python循环两个列表的方法:

用“for i in range()”的这种方法可以循环遍历列表中的所有元素。例如:“for i in range(0,10)”可以循环遍历多个长度为10的列表

示例如下:

执行结果如下:

更多Python知识,请关注:Python自学网!!

阅读全文

与python遍历两个数组相关的资料

热点内容
如何破解腾讯服务器 浏览:87
嵌入式能编译文件的权限 浏览:12
轿车空调压缩机突然怎么不工作了 浏览:432
dd命令怎么解压 浏览:397
旧版安卓怎么开锁 浏览:247
开发程序员推荐 浏览:263
企信如何禁止访问其他app 浏览:71
程序员办公本推荐2019 浏览:197
手机qq下载app在哪里 浏览:536
阿里程序员喊话 浏览:982
软件服务器地址不对怎么办 浏览:156
gcco的编译格式 浏览:192
手持喷码机加密怎么买墨盒 浏览:744
cadcc命令 浏览:902
安卓手机摄像头为什么不用蓝宝石 浏览:958
编译器保留数字 浏览:8
linux解压war命令 浏览:48
红与黑中央编译 浏览:570
我的世界简单命令方块教学 浏览:196
什么游戏解压最合适 浏览:508