mirror of
https://github.com/yangshun/tech-interview-handbook.git
synced 2026-05-11 10:40:30 +08:00
website: move into monorepo
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
function matrixClone(matrix, defaultValue) {
|
||||
return matrix.map((row) => {
|
||||
return defaultValue === undefined
|
||||
? row.slice(0)
|
||||
: Array(row.length).fill(defaultValue);
|
||||
});
|
||||
}
|
||||
|
||||
const deepEqual = require('./deepEqual');
|
||||
|
||||
// Test clone.
|
||||
const a = [
|
||||
[1, 2],
|
||||
[1, 4],
|
||||
];
|
||||
console.log(
|
||||
deepEqual(matrixClone(a), [
|
||||
[1, 2],
|
||||
[1, 4],
|
||||
]),
|
||||
);
|
||||
a[0][0] = 4;
|
||||
console.log(
|
||||
deepEqual(matrixClone(a), [
|
||||
[1, 2],
|
||||
[1, 4],
|
||||
]) === false,
|
||||
);
|
||||
console.log(deepEqual(matrixClone([[1]]), [[1]]));
|
||||
|
||||
// Test clone with default value.
|
||||
console.log(
|
||||
deepEqual(
|
||||
matrixClone(
|
||||
[
|
||||
[1, 2],
|
||||
[1, 4],
|
||||
],
|
||||
1,
|
||||
),
|
||||
[
|
||||
[1, 1],
|
||||
[1, 1],
|
||||
],
|
||||
),
|
||||
);
|
||||
console.log(
|
||||
deepEqual(
|
||||
matrixClone(
|
||||
[
|
||||
[1, 2],
|
||||
[1, 4],
|
||||
],
|
||||
null,
|
||||
),
|
||||
[
|
||||
[null, null],
|
||||
[null, null],
|
||||
],
|
||||
),
|
||||
);
|
||||
Reference in New Issue
Block a user