349 次浏览
给定一个字符串 s,它包含小写字母或大写字母,我们需要返回可以用这些字母构建的最长回文串的长度。字母区分大小写,例如,“Aa”在这里不被认为是回文串。例如 -如果输入字符串是 -const str = "abccccdd";那么输出应该是 7,因为可以构建的最长回文串之一是“dccaccd”,其长度为 7。示例const str = "abccccdd"; const longestPalindrome = (str) => { const set = new Set(); let count = 0; for (const char of str) { ... 阅读更多
289 次浏览
我们需要编写一个 JavaScript 函数,它接收一个非负整数作为输入,并计算并返回其平方根。我们可以将浮点数向下取整为整数。例如:对于数字 15,我们不需要返回精确值,我们只需返回最接近的较小整数 3,对于 15 的情况。我们将使用二分查找算法来计算给定数字的平方根。这段代码将是 -示例const squareRoot = (num = 1) => { let l = 0; let r = ... 阅读更多
324 次浏览
我们需要编写一个 JavaScript 函数,它接收一个字符串作为输入,并仅反转字符串的元音。例如 -如果输入字符串是 -const str = 'Hello';那么输出应该是 -const output = 'Holle';这段代码将是 -const str = 'Hello'; const reverseVowels = (str = '') => { const vowels = new Set(['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U']); let left = 0, right = str.length-1; let foundLeft = false, foundRight = false; str = str.split(""); while(left < right){ if(vowels.has(str[left])){ ... 阅读更多
71 次浏览
考虑以下输入和输出数组 -const input = ["0:3", "1:3", "4:5", "5:6", "6:8"]; const output = [ [0, 1, 3], [4, 5, 6, 8] ];将每个数字视为图中的一个节点,并将每个配对 x:y 视为节点 x 和 y 之间的边,我们需要找到可以使用定义的边遍历的数字集。也就是说,用图论的术语来说,找到此类图中不同的连通分量。例如,在上一个数组中,无法从 4 遍历到 0,因此它们是 ... 阅读更多
89 次浏览
我们需要编写一个 JavaScript 函数,它接收一个数字数组数组作为第一个参数,并接收一个数字数组作为第二个参数。该函数应从第一个数组的每个数组中选择一个子数组(包含第二个数组和第一个数组的相应数组都共有的项目的子数组)。例如 -如果输入是 -示例const arr1 = [ [1, 2, 5, 6], [5, 13, 7, 8], [9, 11, 13, 15], [13, 14, 15, 16], [1, 9, 11, 12] ]; const arr2 = [9, 11, 13, 15, 1, 2, 5, ... 阅读更多
538 次浏览
我们需要编写一个 JavaScript 函数,它接收一个可能包含一些重复元素的数字数组作为输入。该函数应返回数组中最长的重复数字序列的长度。例如 -如果输入数组是 -const arr = [2, 1, 1, 2, 3, 3, 2, 2, 2, 1];那么输出应该是 3,因为数字 2 在数组中连续重复了 3 次(这是最大的次数)。示例const arr = [2, 1, 1, 2, 3, 3, 2, 2, 2, 1]; const findLongestSequence = (arr = []) => { const res ... 阅读更多
338 次浏览
假设我们有两个这样的数组 -const input = ['S-1', 'S-2', 'S-3', 'S-4', 'S-5', 'S-6', 'S-7', 'S-8']; const sortingArray = ["S-1", "S-5", "S-2", "S-6", "S-3", "S-7", "S-4", "S-8"];我们需要编写一个 JavaScript 函数,它分别将这两个数组作为第一个和第二个参数接收。该函数应根据它们在第二个数组中的位置对第一个数组的元素进行排序。这段代码将是 -示例const input = ['S-1', 'S-2', 'S-3', 'S-4', 'S-5', 'S-6', 'S-7', 'S-8']; const sortingArray = ["S-1", "S-5", "S-2", "S-6", "S-3", "S-7", "S-4", "S-8"]; const sortByReference = (arr1 = [], arr2 = ... 阅读更多
1K+ 次浏览
假设我们有以下 JSON 对象 -const obj = { "context": { "device": { "localeCountryCode": "AX", "datetime": "3047-09-29T07:09:52.498Z" }, "currentLocation": { "country": "KM", "lon": -78789486, } } };我们需要编写一个 JavaScript 递归函数,它最初接收一个这样的数组。该函数应将上述对象拆分为“标签” - “子项”格式。因此,上述对象的输出应如下所示 -const output = { ... 阅读更多
6K+ 次浏览
假设我们有以下嵌套 JSON 对象 -const obj = { id: 1, title: 'hello world', child: { id: null, title: 'foobar', child: { id: null, title: 'i should be in results array ' } }, foo: { id: null, title: 'i should be in results array too!' }, deep: [ { id: null, ... 阅读更多
163 次浏览
假设我们有一个这样的对象数组:`const arr = [ {"time":"18:00:00"}, {"time":"10:00:00"}, {"time":"16:30:00"} ];`我们需要编写一个 JavaScript 函数,接收这样的数组并执行以下操作: