题目 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多…
题目 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums = [0,1,0,3,12]输出: [1,3,12,0,0] 示例 2: 输入: nums = [0]输出: [0] 提示…
题目 给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1:输入:nums = [100,4,200,1,3,2]输出:4解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4。示例 2:输入:nums = [0,3,7,2…
题目 给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 示例 1: 输入: strs = ["eat", "tea", "tan", "ate", "nat", "bat"] 输出: [["bat"],["nat","tan"]…
题目:两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。 你可以按任意顺序返回答案。 示例 1…
类型:行为型设计模式 核心思想:定义一系列算法或行为,将它们封装起来,使得它们可以互换。 针对场景:当需要为同一个行为提供不同的实现(如不同类型用户的定价策略、不同支付方式的选择等)实例如下: 电商平台的杀熟策略,针对不同活跃度用户,实现不同的定价策略。例如新用户优惠策略、忠诚用户策略、老用户高价策略等。 某多多的营销系统中,根据不同的用户行为(签…
需求/亮点:实现strategy_rule中的rule_weight策略 4000:102,103,104,105 5000:102,103,104,105,106,107 6000:102,103,104,105,106,107,108,109 根据用户当前积分数,提供一个分段概率奖品控制机制,当用户积分达到特定范围时,只能抽出对应award_i…
场景 服务端发起订单落库请求后,已成功写入数据库。此时发生网络波动,数据库传回的信息未传送到服务端。服务端超时后再次发起落库请求,产生第二次落库。这种情况不符合幂等性。 幂等性 幂等性(Idempotence)是计算机科学中的一个概念,用于描述一个操作在执行一次和执行多次的结果是相同的。换句话说,如果它的多次执行不会对系统的状态产生额外的影响,即无…
类型:行为型设计模式 输入一个请求,责任链模式将多个处理器节点连接成链,请求传入后依次进行校验处理,如果被拦截则由该处理器直接返回结果,否则传递至下一处理器节点,直到最后一个处理器节点处理完毕。 组成结构 责任链模式包括以下几个基本结构: 处理者(Handler):声明所有具体处理者的通用接口。习惯在 IxxxChain 中定义每个处理者都要实现的…
今天做kama网上模版方法模式的题目18-咖啡馆,共经历了三次修改。其中最后一次优化在枚举类中加入了工厂,用到函数式接口以及方法引入的相关知识。这里通过对这次实践做一下总结,深化一下对模版方法模式、函数式接口以及方法引入的理解。 题目来源:https://kamacoder.com/problempage.php?pid=1087 改进过程 第一次…