摘要: 有些数的素因子只有 3,5,7,请设计一个算法找出第 k 个数。注意,不是必须有这些素因子,而是必须不包含其他的素因子。例如,前几个数按顺序应该是 1,3,5,7,9,15,21。 /** * 三指针方式 */ const getKthMagicNumber = (k = 5) => { const 阅读全文
posted @ 2023-02-05 23:24 671_MrSix 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 给你一个下标从 0 开始、由 n 个整数组成的数组 arr 。 arr 中两个元素的 间隔 定义为它们下标之间的 绝对差 。更正式地,arr[i] 和 arr[j] 之间的间隔是 |i - j| 。 返回一个长度为 n 的数组 intervals ,其中 intervals[i] 是 arr[i] 阅读全文
posted @ 2023-02-05 23:23 671_MrSix 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。 换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。 以数组形式返回答案。 const smallerNumber 阅读全文
posted @ 2023-02-05 19:56 671_MrSix 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 /** * 字典方式 */ const majorityElement = (nums) => { let dic = 阅读全文
posted @ 2023-02-05 19:44 671_MrSix 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 给你一个整数数组 nums 和一个整数 k ,判断数组中是否存在两个 不同的索引 i 和 j ,满足 nums[i] == nums[j] 且 abs(i - j) <= k 。如果存在,返回 true ;否则,返回 false 。 /** * 时间复杂度O(n^2) */ const contai 阅读全文
posted @ 2023-02-05 02:05 671_MrSix 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 const intersection = (nums1, nums2) => { return [...new Set(nums1.filter(i => num 阅读全文
posted @ 2023-02-05 01:44 671_MrSix 阅读(13) 评论(0) 推荐(0) 编辑
摘要: // 二分法 O(logn) const findNearestTarget = (nums = [1, 2, 6, 9, 10], target = 3) => { let startIdx = 0, endIdx = nums.length - 1; while (startIdx <= end 阅读全文
posted @ 2023-02-05 00:58 671_MrSix 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个 m x n 矩阵重塑为另一个大小不同(r x c)的新矩阵,但保留其原始数据。 给你一个由二维数组 mat 表示的 m x n 矩阵,以及两个正整数 r 和 c ,分别表示想要的重构的矩阵的行数和列数。 重构后的矩阵需要将原 阅读全文
posted @ 2023-02-05 00:17 671_MrSix 阅读(10) 评论(0) 推荐(0) 编辑