当前位置: 首页 > wzjs >正文

网站信任的体验如何做潍坊自动seo

网站信任的体验如何做,潍坊自动seo,建邺做网站价格,某高校门户网站开发案例454.四数相加II 题目 思路与解法 第一想法: 无 carl的讲解: 前两个为一组,后两个为一组。遍历前两个可能的加值,再在后两组中寻找有没有前面值的负值,若有就是一组。 我认为,重点在于将问题简化为前两个…

454.四数相加II

题目

在这里插入图片描述

思路与解法

第一想法:
carl的讲解: 前两个为一组,后两个为一组。遍历前两个可能的加值,再在后两组中寻找有没有前面值的负值,若有就是一组。

我认为,重点在于将问题简化为前两个数组和后两个数组的逻辑。

class Solution:def fourSumCount(self, nums1: List[int], nums2: List[int], nums3: List[int], nums4: List[int]) -> int:from collections import defaultdictsum_dict = defaultdict(int)for a in nums1:for b in nums2:sum_dict[a+b] += 1count = 0for c in nums3:for d in nums4:if (0-c-d) in sum_dict:count += sum_dict[0-c-d]return count 

383. 赎金信

题目

在这里插入图片描述

思路与解法

第一想法: 将magazine中的字母存在字典中,key是字母,value是出现的次数。然后遍历ransomNote的字母,在magazine字典中出现一次就value减一,value小于0就返回False。若字典中没有,就直接返会False。最后都通过了,就返回True。

class Solution:def canConstruct(self, ransomNote: str, magazine: str) -> bool:from collections import defaultdictmagazine_dict = defaultdict(int)for a in magazine:magazine_dict[a] += 1for b in ransomNote:if b not in magazine_dict:return Falsemagazine_dict[b] -= 1if magazine_dict[b] < 0:return Falsereturn True

15. 三数之和

题目

思路与解法

第一想法: 双指针,三个数,for i in enumerate(nums),i代表第一个,low = i+1, fast = low+1,代表后面两个。然后low 和 fast遍历数组来和i相加看是不是等于0。i也不断往后遍历。
但是忽略了去重。加上去重就是对的,但是超时了。

class Solution:def threeSum(self, nums: List[int]) -> List[List[int]]:res = []nums.sort()for i, num  in enumerate(nums):low = i + 1if i > 0 and nums[i] == nums[i-1]:continuewhile low < len(nums) -1 :fast = low + 1while fast < len(nums):if nums[low] + nums[fast] + num == 0:res.append([num, nums[low], nums[fast]])while fast + 1 < len(nums) and nums[fast + 1] == nums[fast]:fast += 1fast += 1while low + 1 < len(nums) -1 and nums[low+1] == nums[low]:low += 1low += 1return res

carl的讲解: 让fast指针从最右边开始,因为排序了,所以fast(right)指向的是最大值

class Solution:def threeSum(self, nums: List[int]) -> List[List[int]]:result = []nums.sort()for i in range(len(nums)):# 如果第一个元素已经大于0,不需要进一步检查if nums[i] > 0:return result# 跳过相同的元素以避免重复if i > 0 and nums[i] == nums[i - 1]:continueleft = i + 1right = len(nums) - 1while right > left:sum_ = nums[i] + nums[left] + nums[right]if sum_ < 0:left += 1elif sum_ > 0:right -= 1else:result.append([nums[i], nums[left], nums[right]])# 跳过相同的元素以避免重复while right > left and nums[right] == nums[right - 1]:right -= 1while right > left and nums[left] == nums[left + 1]:left += 1right -= 1left += 1return result

18. 四数之和

题目

在这里插入图片描述

思路与解法

carl的讲解:

class Solution:def fourSum(self, nums: List[int], target: int) -> List[List[int]]:nums.sort()n = len(nums)result = []for i in range(n):if nums[i] > target and nums[i] > 0 and target > 0:# 剪枝(可省)breakif i > 0 and nums[i] == nums[i-1]:# 去重continuefor j in range(i+1, n):if nums[i] + nums[j] > target and target > 0: #剪枝(可省)breakif j > i+1 and nums[j] == nums[j-1]: # 去重continueleft, right = j+1, n-1while left < right:s = nums[i] + nums[j] + nums[left] + nums[right]if s == target:result.append([nums[i], nums[j], nums[left], nums[right]])while left < right and nums[left] == nums[left+1]:left += 1while left < right and nums[right] == nums[right-1]:right -= 1left += 1right -= 1elif s < target:left += 1else:right -= 1return result
http://www.dtcms.com/wzjs/165144.html

相关文章:

  • 福田营销型网站建站推广外包短视频营销案例
  • 网站建设08中国百强县市榜单
  • 商丘做网站推广全达seo
  • 政务信息网站的建设的意义杭州seo
  • 哪儿可以学电商贺贵江seo教程
  • 摄影网站建设论文代运营公司是怎么运营的
  • 成都网站开发建设厦门网站外包
  • b站推广网站2024不用下载软件网站推广优化流程
  • 杭州做企业网站公司什么文案容易上热门
  • 关于域名和主机论坛的网站营销策略4p分析怎么写
  • 网站制作的一般步骤地推项目对接平台
  • 苏州设计网站建设发布
  • 网站两列导航app关键词排名优化
  • 营销型网站图片关键词排名优化公司外包
  • 门户网站建设情况总结以网红引流促业态提升
  • 投标建设用地是哪个网站重庆百度快照优化排名
  • 怎么查询公司名字是否可以注册seo学堂
  • 雄安智能网站建设方案刷粉网站推广免费
  • 广州网站建设公司哪家好如何搜索关键词热度
  • 长春城乡建设部网站首页百度推广关键词
  • 牛牛网站开发网络推广费用计入什么科目
  • 企业网站备案 优帮云地推app推广赚佣金
  • 政务信息化建设网站简阳seo排名优化课程
  • 衡水网站设计费用网络推广的网站有哪些
  • 关于做营销型网站的建议如何用模板做网站
  • 江苏丹阳疫情最新消息官网海外广告优化师
  • 网站界面设计套题如何做游戏推广
  • 怎样在网站做环评公示seo接单平台
  • 怎么自己做砍价网站口碑营销的前提及好处有哪些
  • 网站 建设 计划旺道seo软件