5.12-leepcode 作业详解
程序员文章站
2022-06-24 11:13:39
leepcode 作业详解 1、给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。 正确解答 第一次用字典去解题,出现bug,虽然在pycharm里面代码运行正常,但是leepcode显示错误。 2、给定一个整 ......
leepcode 作业详解
1、给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。
正确解答
class solution: def containsduplicate(self, nums: list[int]) -> bool: nums_set=set(nums) return (len(nums_set) != len(nums))
第一次用字典去解题,出现bug,虽然在pycharm里面代码运行正常,但是leepcode显示错误。
class solution: def containsduplicate(self, nums: list[int]) -> bool: lis1=[1,2,3,1] dic={} for i in lis1: if i in dic: dic[i] += 1 else: dic[i] = 1 if dic[i] >=2: return (dic[i]>=2) else: return (dic[i] >= 2) ##if dic[i] >=2: ##print('true') ##else: ##print('false')
2、给定一个整数数组 nums
和一个目标值 target
,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。
class solution: def twosum(self, nums: list[int], target: int) -> list[int]: nums = [2,7,11,15] target = 9 for i in range(len(nums)): if i < (len(nums) -1): if nums[i] + nums[i+1] == target: return(i,i+1)
3、编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[]
的形式给出。
不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 o(1) 的额外空间解决这一问题。
你可以假设数组中的所有字符都是 ascii 码表中的可打印字符。
return s.reverse()
推荐阅读
-
python logging日志模块以及多进程日志详解
-
详解利用django中间件django.middleware.csrf.CsrfViewMiddleware防止csrf攻击
-
Python字符编码详解
-
详解vue 计算属性与方法跟侦听器区别(面试考点)
-
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
-
详解Vue2.0配置mint-ui踩过的那些坑
-
vuex state及mapState的基础用法详解
-
详解python列表生成式和列表生成式器区别
-
详解Vue.js——60分钟组件快速入门(上篇)
-
我用Python抓取了7000 多本电子书案例详解