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

瓜子网网站建设策划书洛阳市河阳建设工程有限公司网站

瓜子网网站建设策划书,洛阳市河阳建设工程有限公司网站,快速开发平台,网站建设成功案例方案leetcode-hot100-hash表 1. 两数之和49. 字母异位次分组128. 最长连续序列 hash表主要功能是#xff1a;记录#xff0c;当做查找表#xff0c;时间换空间的一种策略。 1. 两数之和 nums [2,7,11,15], target 9 输出#xff1a;[0,1] **解释#xff1a;因为 nums[0] … leetcode-hot100-hash表 1. 两数之和49. 字母异位次分组128. 最长连续序列 hash表主要功能是记录当做查找表时间换空间的一种策略。 1. 两数之和 nums [2,7,11,15], target 9 输出[0,1] **解释因为 nums[0] nums[1] 9 返回 [0, 1] 。 你可以假设每种输入只会对应一个答案。 第一思路双层循环第一层循环 i in [0, N], 第二层循环 j in [i1, N], 依次计算nums[i] nums[j]判断是否等于target如果相等返回下标ij否则继续遍历直到循环结束返回[-1, -1]表示不存在这组解。 for i in range(0, N):for j in range(i1, N):temp nums[i] nums[j]if temp target:return [i, j]return [-1, -1]存在的问题时间复杂度过高。 因为是一个查找问题所以想到用hash表。 如果我们先过一遍数组将数值和下标的对应关系存储在hash表中。然后再过一遍数组判断target - nums[i]是否在hash表中如果在说明知道了返回即可如果没找到遍历下一个元素。 另外我们可以将hash表存储和数组遍历合并到一次遍历中。 hash_table {}for i in range(0, N):if target - nums[i] in hash_table:return [hash_table[target-nums[i]], i]hash_table[nums[i]] ireturn [-1, -1] # 没找到class Solution:def twoSum(self, nums: List[int], target: int) - List[int]:table {}for i in range(len(nums)):if target - nums[i] in table:return [table[target-nums[i]], i]table[nums[i]] ireturn [-1, -1]49. 字母异位次分组 输入: strs [eat, tea, tan, ate, nat, bat] 输出: output[ [“bat”],[“nat”,“tan”],[“ate”,“eat”,“tea”] ] 对数组中的每一项进行排序这样异位词排序后顺序一致我们可以把顺序一致的字符串合并遍历结束后返回即可。 hash_table defaultdict(list)for st in strs:key .join(sorted(st))hash_table[key].append(st)return hash_table.values()异位次的统一化可以通过数据统计实现将异位次转换成统计信息如a3表示a出现了3次。 因为是字母我们可以用26个英文字符进行统计。 128. 最长连续序列 示例 1 **输入nums [100,4,200,1,3,2] 输出4 解释最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4。 示例 2 **输入nums [0,3,7,2,5,8,4,6,0,1] 输出9 采用集合记录数组中的每个元素然后查找连续序列最后再多个连续序列中查找最长序列。 如何查找连续序列以当前元素为第一个元素向后查找如果找到了继续找连续序列因为连续序列所以当前元素-1应该不在hash表或集合中。直到找不到说明找到了以当前元素为第一个元素的连续序列然后以下一个元素为起点查找新的序列。 hs set(nums)longest 0 for num in nums:if nums-1 not in hs:cur_len 1cur_num numswhile cur_num1 in hs:cur_len 1cur_num 1longest max(longest, cur_len)return longestclass Solution:def longestConsecutive(self, nums: List[int]) - int:longest_streak 0num_set set(nums)for num in num_set:if num - 1 not in num_set:current_num numcurrent_streak 1while current_num 1 in num_set:current_num 1current_streak 1longest_streak max(longest_streak, current_streak)return longest_streakclass Solution { public:int longestConsecutive(vectorint nums) {unordered_setint hash;for (auto x : nums)hash.insert(x);int longestSteak 0;for (auto x: hash) {if (!hash.count(x-1)){int curNum x, curSteak 1;while (hash.count(curNum1)) {curNum 1;curSteak 1;}longestSteak max(longestSteak, curSteak);}}return longestSteak;} };hash表主要功能是记录当做查找表时间换空间的一种策略。
http://www.pierceye.com/news/746756/

相关文章:

  • 网站开发技术可行性分析怎么写孝感建设公司网站
  • 灯塔网站建设有网站源码怎么做网站
  • 网站设计方案策划德国的网站后缀
  • 可以自己做网站卖东西wordpress标签静态
  • 典当行 网站威海网站推广
  • 佛山市住房建设局网站网站开发业务ppt
  • 页面结构和页面设计优化措施二十条
  • 做网站程序怎么写wordpress漂浮表单
  • 企业网站要怎么建设网站建设 工具
  • wordpress 邮箱激活宁波营销型网站建设优化建站
  • 婚纱网站页面设计广州网站建设推广公司有哪些
  • 网站制作报价大约建设模式有哪些
  • 公司邮箱怎么注册流程如何优化关键词提升相关度
  • 网站建议方案app代运营
  • 北京建机官网查询台州seo全网营销
  • 网站建设书店用户分几类网站建设项目采购公告
  • 如何做企业网站宣传wordpress站内搜索次数
  • 加盟招商推广网站如何做品牌运营与推广
  • 网站做分布式部署湖南平台网站建设设计
  • 沈阳市建设工程项目管理中心网站网络项目网
  • 沈阳网站建设成创输入网址跳到别的网站
  • 课程网站开发建设商务网站的费用
  • 资讯网站优化排名wordpress 删除所有文章
  • 旅游海外推广网站建设方案wordpress外观无法编辑
  • 品牌手表网站网站推广律师关键词有哪些
  • 卖视频会员个人网站怎么做推广网站的图片怎么做
  • 服务器关闭 网站被k微信公众号推广的好处
  • 工业设计招聘信息网站做网站首页轮播图代码
  • 央企网站开发手机网站 input
  • 千里马招标网站东莞网站推广行者seo08