当前位置: 首页 > 编程笔记 >

交换数组的第k个元素-JavaScript

甄飞飙
2023-03-14
本文向大家介绍交换数组的第k个元素-JavaScript,包括了交换数组的第k个元素-JavaScript的使用技巧和注意事项,需要的朋友参考一下

我们需要编写一个JavaScript函数,该函数接受一个Numbers和一个数字数组,例如k(k必须小于或等于数组的长度)。

并且我们的函数应该从数组末尾的第k个元素开始替换第k个元素。

示例

以下是代码-

const arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
const swapKth = (arr, k) => {
   const { length: l } = arr;
   let temp;
   const ind = k-1;
   temp = arr[ind];
   arr[ind] = arr[l-k];
   arr[l-k] = temp;
};
swapKth(arr, 4);
console.log(arr);
swapKth(arr, 8);
console.log(arr);

输出结果

以下是控制台中的输出-

[
   0, 1, 2, 6, 4,
   5, 3, 7, 8, 9
]
[
   0, 1, 7, 6, 4,
   5, 3, 2, 8, 9
]
 类似资料:
  • 问题内容: 有没有更简单的方法来交换数组中的两个元素? 问题答案: 您只需要一个临时变量。 *10年后,我们大量采用了ES6,从而 *编辑 劫持性最高答案: 给定数组,您现在可以在一行中交换值,如下所示: 这将产生数组。。

  • 我有一个堆(像二叉树一样实现:每个节点都有两个指向子节点的指针和一个指向父节点的指针)。 给定第k个元素的元素数量,我如何找到它(以BFS顺序)?我认为这可以在O(logn)时间内完成。。

  • 有没有办法将第一个和第二个元素替换为向量中的所有元组?假设我有这样的东西: 元组的第一个元素现在是1和3,第二个元素是2和4。有容易使2和4成为第一个元素吗?

  • 我最近遇到了一个编码面试问题,似乎找不到答案。问题是这样的。 给定一个整数数组,编写一个函数,返回组织数组所需的最小交换,以便每个相邻元素的差值小于或等于K。 例如 它应该返回1的原因是,通过交换40和30,数组将满足给定的语句,即所有相邻元素之间的间距应在20以内。 我确实试着在谷歌上搜索答案,我想我在其他算法助手网站上找到了一些答案,但无法找到我问题的答案。失败的测试用例有一个数组和,它们应该

  • 这可能是微软的面试问题。 从排序的数组中找出第k个最小的元素(忽略重复项) [编辑]:数组可能包含重复项(未指定)。 想了很多次,但仍然质疑自己:还有更好的解决方案吗? 取最大堆 时间复杂度:O(NlogK) 空间复杂度:O(K) 这些元素可能是重复的。所以,通过与以前的元素进行比较来检查是否有唯一的元素 还可以使用改进版的快速排序分区算法。但它可能会导致最坏的情况,因为数组已经排序<这里出现了两

  • 设计一个算法,给定一组n个整数和另一个整数x,确定是否存在k(n 我一直在为面试做准备,我遇到了这个算法。我已经解决了问题中指定k的问题。比如2或3。但是我找不到任何可能存在的k的答案。我尝试过用动态规划来解决它,但没有得到结果。有人能帮我吗?