
- Javascript Basics Tutorial
- Javascript - Home
- Javascript - Overview
- Javascript - Syntax
- Javascript - Enabling
- Javascript - Placement
- Javascript - Variables
- Javascript - Operators
- Javascript - If...Else
- Javascript - Switch Case
- Javascript - While Loop
- Javascript - For Loop
- Javascript - For...in
- Javascript - Loop Control
- Javascript - Functions
- Javascript - Events
- Javascript - Cookies
- Javascript - Page Redirect
- Javascript - Dialog Boxes
- Javascript - Void Keyword
- Javascript - Page Printing
- JavaScript Objects
- Javascript - Objects
- Javascript - Number
- Javascript - Boolean
- Javascript - Strings
- Javascript - Arrays
- Javascript - Date
- Javascript - Math
- Javascript - RegExp
- Javascript - HTML DOM
- JavaScript Advanced
- Javascript - Error Handling
- Javascript - Validations
- Javascript - Animation
- Javascript - Multimedia
- Javascript - Debugging
- Javascript - Image Map
- Javascript - Browsers
- JavaScript Useful Resources
- Javascript - Questions And Answers
- Javascript - Quick Guide
- Javascript - Functions
- Javascript - Resources
Converting array into increasing sequence in JavaScript
Increasing Sequence
We define an array as increasing if arr[i] <= arr[i + 1] holds for every i (0-based) such that (0 <= i <= n - 2).
Problem
We are required to write a JavaScript function that takes in an array of integers, arr, as the first and the only argument.
Our function should determine whether we can convert this array into an increasing array by modifying at most one element of the array.
If we can do so we should return true, false otherwise.
For example, if the input to the function is
Input
const arr = [8, 3, 3, 7, 9];
Output
const output = true;
Output Explanation
Because we can replace the 8 at index 0 with 1 or 2 to get the desired array.
Example
Following is the code −
const arr = [8, 3, 3, 7, 9]; const canConvert = (arr = []) => { const find = () => { for (let i = 1; i < arr.length; i++) { if (arr[i] < arr[i - 1]) { return false } } return true } for (let i = 0; i < arr.length; i++) { if (arr[i] < arr[i - 1]) { const temp = arr[i] arr[i] = arr[i - 1] if (find(arr)) { return true } arr[i] = temp arr[i - 1] = arr[i] return find(arr) } } return true } console.log(canConvert(arr));
Output
true
- Related Articles
- Removing least number of elements to convert array into increasing sequence using JavaScript
- JavaScript: Check if array has an almost increasing sequence
- Strictly increasing sequence JavaScript
- Converting array of arrays into an object in JavaScript
- JavaScript Converting array of objects into object of arrays
- Converting array to set in JavaScript
- Divide Array Into Increasing Sequences in Python
- How to get almost increasing sequence of integers in JavaScript ?
- Converting humanYears into catYears and dogYears in JavaScript
- Converting string to an array in JavaScript
- Longest path in 2-D that contains increasing sequence in JavaScript
- Finding nth element of an increasing sequence using JavaScript
- Converting two arrays into a JSON object in JavaScript
- Converting array of Numbers to cumulative sum array in JavaScript
- Converting a file into a byte array in SAP ABAP

Advertisements