//option3
// const arrayMaximalAdjacentDifference=(nums)=>Math.max(...nums
// .map((num,index)=>Math.abs(num - nums[index +1]))
// .map(item=>item>0?item:0))
/**
* Test Suite
*/
describe('arrayMaximalAdjacentDifference()', () => {
it('returns largest difference between adjacent values', () => {
// arrange
const nums = [2, 4, 1, 0];
// act
const result = arrayMaximalAdjacentDifference(nums);
// log
console.log("result 1: ", result);
// assert
expect(result).toBe(3);
});
it('returns largest difference between adjacent values example 2', () => {
// arrange
const nums = [2, 9, 1, 0];
// act
const result = arrayMaximalAdjacentDifference(nums);
// log
console.log("result 2: ", result);
// assert
expect(result).toBe(8);
});
it('returns largest difference between adjacent values example 3', () => {
// arrange
const nums = [0];
// act
const result = arrayMaximalAdjacentDifference(nums);
// log
console.log("result 5: ", result);
// assert
expect(result).toBe(0);
});
});
// option 1
const arrayMaximalAdjacentDifference=(nums)=>Math.max(...nums.map((num,index)=>num - nums[index +1]
>0? Math.abs(num - nums[index +1]):num))
//option2
// const arrayMaximalAdjacentDifference=(nums)=>nums
// .map((num,index)=>Math.abs(num - nums[index +1]))
// .map(item=>item>0?item:0)
// .reduce((acc,cur)=>acc>cur?acc:cur)