leetcode 100 热题 三数字之和

class Solution(object):

def twoSum(self, nums,target):

rt_list=[]

myDict={}

for i ,t in enumerate(nums):

myDict[t] = i

for i ,t in enumerate(nums):

if i>0 and nums[i-1]==nums[i]:

continue

if myDict.get(target-t)!=None and myDict.get(target-t)>i:

rt_list.append([t,target-t])

return rt_list

def threeSum(self, nums):

"""

:type nums: List[int]

:rtype: List[List[int]]

"""

rt_list=[]

nums.sort()

print(nums)

nums_tmp=nums.deepcopy()

for i ,t in enumerate(nums):

if i>0 and nums[i-1]==nums[i]:

continue

twosum_list = self.twoSum(nums[i+1:],0 - t)

print(twosum_list)

if len(twosum_list)>0:

for sub_list in twosum_list:

sub_list.append(t)

rt_list.append(sub_list)

rt_list2=[]

for i in rt_list:

i.sort()

rt_list2.append(i)

return rt_list2

一定要重视的是不能多次对同一个元素进行处理!!!一定要有continue部分和sort部分防止出现一样的结果

相关推荐
过河卒_zh15667664 分钟前
喜讯:第十五批生成合成类算法备案备案号公布
人工智能·算法·aigc·生成式人工智能·算法备案
cpp_25017 分钟前
B3927 [GESP202312 四级] 小杨的字典
数据结构·c++·算法·题解·洛谷
程序员三藏8 分钟前
单元测试详解
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
踩坑记录9 分钟前
leetcode hot100 最长连续子序列 哈希表 medium
leetcode
Cx330❀10 分钟前
《C++ 递归、搜索与回溯》第2-3题:合并两个有序链表,反转链表
开发语言·数据结构·c++·算法·链表·面试
AI科技星11 分钟前
电磁耦合常数Z‘的第一性原理推导与严格验证:张祥前统一场论的几何基石
服务器·人工智能·线性代数·算法·矩阵
AI科技星15 分钟前
电场起源的几何革命:变化的引力场产生电场方程的第一性原理推导、验证与统一性意义
开发语言·人工智能·线性代数·算法·机器学习·数学建模
中國龍在廣州19 分钟前
“物理AI”吹响号角
大数据·人工智能·深度学习·算法·机器人·机器人学习
悄悄敲敲敲19 分钟前
MySQL复合查询
面试·职场和发展
CCPC不拿奖不改名21 分钟前
面向对象编程:继承与多态+面试习题
开发语言·数据结构·python·学习·面试·职场和发展