All files / utils swap.ts

100% Statements 4/4
100% Branches 0/0
100% Functions 1/1
100% Lines 4/4

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19                          2x 2x 2x 2x    
/**
 * 原地交换数组中的两个元素。
 *
 * @param arr 要处理的数组
 * @param i 第一个元素的索引
 * @param j 第二个元素的索引
 * @returns 返回交换后的数组
 * @example
 * ```typescript
 * swap([1, 2, 3], 0, 2) // => [3, 2, 1]
 * ```
 */
export function swap<T>(arr: T[], i: number, j: number): T[] {
  const iItem = arr[i]
  arr[i] = arr[j]
  arr[j] = iItem
  return arr
}