2023-02-06 12:19:39 +03:00

22 lines
616 B
TypeScript

export function areEqual<T>(arr1: readonly T[], arr2: readonly T[]) {
return arr1.length === arr2.length && arr1.every((value, index) => value === arr2[index]);
}
export function difference<T>(arr1: readonly T[], arr2: readonly T[]) {
if (arr1.length !== arr2.length) return null;
const changes = [];
// eslint-disable-next-line unicorn/no-for-loop
for (let i = 0; i < arr1.length; i += 1) {
if (arr1[i] !== arr2[i]) {
changes.push(i);
}
}
return changes;
}
export function isSorted(arr: number[]) {
return arr.every((value, index, array) => !index || array[index - 1] <= value);
}