Python数据结构与算法——第四十一课 散列表(哈希表)的应用:除重/选票/交集

 

  去除集合的重复元素

  把一个集合的元素作为键添加到字典中,然后取出所有的键得到的新集合就没有重复元素了。

  程序代码:

 

  运行结果:

 

 

  选票统计

  选举对象作为键,得票数作为值的字典进行统计。

  程序代码:

 

  运行结果:

 

 

  求两数组交集

  给定两个数组,编写一个函数来求出它们的交集。实现算法分析:把短数组中的值作为键、统计个数0作为值生成一个字典,用这个字典统计长数组中的出现次数,出现次数不为0的就是交集。

  程序代码:

 

  运行结果:

 

 

  练习1:把集合[3,4,1,5,2,4,3,6,8,4,2]的重复元素去除。

  练习2:如果把上面的选举次数改为10000,看看选举结果如何,他们的得票数的差缩小了还是扩大了?

  练习3:求数组[3,4,1,5,2,4,3,6,8,4,2][9,14,1,15,2,14,3,26,18,4,22]的交集。

 

  学思营编程课堂基于蓝桥STEM86平台https://www.stem86.com,开展学编程三部曲:

Scratch(三年级以前)>>>Python(四年级以后)>>>C++(七年级以后)教育实验活动,任何人可以免费参加,打开https://xuesiying.stem86.com网页注册进入课堂,也可关注本公众号留言。

更多课程请打开学思营同步网站:

http://www.5xstar.com/doc.html

 

参考资料:

1、《Python算法图解》何韬编著 清华大学出版社