算法练习
给定一个整数数组,判断是否存在重复元素。
如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。
set
class Solution:
def containsDuplicate(self, nums):
"""
:type nums: List[int]
:rtype: bool
"""
return len(set(nums)) != len(nums)
此解法借助于列表和集合是否允许重复的特性,ython的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素。这块让我想起来redis数据类型的List和Set,道理是一样的。List中的元素可以重复,Set中的元素不允许重复
hashMap
class Solution:
def containsDuplicate(self, nums):
if len(nums) <= 1:return False
hashmap = {}
for i in nums:
if i in hashmap:
return True
else:
hashmap[i] = 1
return False
英文阅读
继续分享Python数据科学相关的文章
Pythonic Data Cleaning With NumPy and Pandas【一】
这篇文章中主要有以下几个content,介绍Python数据清理的基本步骤
数据集读取
按需删除字段
清理字段
技巧呈现
在对接第三方服务时,如何处理字段兼容和转化,这篇文章会给出一种思路
系统服务化构建-第三方服务商
文章分享
分享一篇我关于组织项目结构的思考文章,目的是思考和讨论如何组织通用型项目代码结构,以PHP YII2框架为例做有说明,设计思想与语言本身无关,适用于各种高级语言。
以下第一张图是YII2官方基础框架模版,第二张图是我经过改造后的分层模块结构图,显然更喜欢第二张图的设计。
YII基础模板.jpg
模块引用图解-代码层次结构03.png