摘要: 双指针 利用双指针的搜索,实质上双指针那部分很简单 记录本题主要是为了记录思想 题目 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例 阅读全文
posted @ 2021-10-31 22:13 RetenQ 阅读(15) 评论(0) 推荐(0) 编辑
摘要: 双指针 利用有序数组的特性进行合并 题目 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意:最终,合并后数组 阅读全文
posted @ 2021-10-31 22:12 RetenQ 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 双指针——快慢指针 可以比较好诠释"快慢指针"用法的一道题 题目 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 示例 1: 输入:nu 阅读全文
posted @ 2021-10-31 22:11 RetenQ 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 双指针 "双指针是用来优化解的,不是拿来暴力的" 如果双指针被用于遍历,那就没有意义了,我还不如整个for 利用条件判断以及范围减小判断,利用双指针的优势,得到优解 题目 给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 阅读全文
posted @ 2021-10-31 22:10 RetenQ 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 位运算 非常巧妙地利用了位运算中异或的性质 题目 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 题解 利用异或的性质 1.任何数和自己异或 阅读全文
posted @ 2021-10-31 22:08 RetenQ 阅读(31) 评论(0) 推荐(0) 编辑
摘要: 位运算 经典之一个数是不是二的幂 题目 给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true ;否则,返回 false 。 如果存在一个整数 x 使得 n == 2x ,则认为 n 是 2 的幂次方。 示例 1: 输入:n = 1 输出:true 解释:20 = 1 示例 2 阅读全文
posted @ 2021-10-31 22:07 RetenQ 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 位运算 同意利用了位运算的特殊性质 n&(n-1)的用法 题目 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量)。 提示: 请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整 阅读全文
posted @ 2021-10-31 22:05 RetenQ 阅读(41) 评论(0) 推荐(0) 编辑