Determine whether array could become non-decreasing by modifying at most 1 element Planned maintenance scheduled April 23, 2019 at 00:00UTC (8:00pm US/Eastern) Announcing the arrival of Valued Associate #679: Cesar Manara Unicorn Meta Zoo #1: Why another podcast?Determine whether any permutation of a given array exists such that the sum of all subarrays of length K are equalTwo-sum solution in JavaScriptDeepest pit of an arrayFind the elements that appear only onceReturn a new array where each element is the number of smaller elements to the right of that element in the original inputMinimum number of parentheses to be removed to make a string of parentheses balancedFind indices of two numbers such that they add up to a targetFind busiest period in buildingSum of two numbers in arrayFind non-duplicated integer in a list where every integer occurs three times except for one integer
Why limits give us the exact value of the slope of the tangent line?
How do I find out the mythology and history of my Fortress?
What order were files/directories outputted in dir?
How to run automated tests after each commit?
What does it mean that physics no longer uses mechanical models to describe phenomena?
Strange behavior of Object.defineProperty() in JavaScript
How many serial port on PI3
Should there be a hyphen in the construction "IT affin"?
Triggering an ultrasonic sensor
Hangman Game with C++
How to draw/optimize this graph with tikz
What would you call this weird metallic apparatus that allows you to lift people?
What is "gratricide"?
"Lost his faith in humanity in the trenches of Verdun" — last line of an SF story
Project Euler #1 in C++
An adverb for when you're not exaggerating
Belief In God or Knowledge Of God. Which is better?
Why do we bend a book to keep it straight?
Did Deadpool rescue all of the X-Force?
How many time did Arya actually used needle?
Effects on objects due to a brief relocation of massive amounts of mass
Maximum summed subsequences with non-adjacent items
Do I really need to have a message in a novel to appeal to readers?
Did Mueller's report provide an evidentiary basis for the claim of Russian govt election interference via social media?
Determine whether array could become non-decreasing by modifying at most 1 element
Planned maintenance scheduled April 23, 2019 at 00:00UTC (8:00pm US/Eastern)
Announcing the arrival of Valued Associate #679: Cesar Manara
Unicorn Meta Zoo #1: Why another podcast?Determine whether any permutation of a given array exists such that the sum of all subarrays of length K are equalTwo-sum solution in JavaScriptDeepest pit of an arrayFind the elements that appear only onceReturn a new array where each element is the number of smaller elements to the right of that element in the original inputMinimum number of parentheses to be removed to make a string of parentheses balancedFind indices of two numbers such that they add up to a targetFind busiest period in buildingSum of two numbers in arrayFind non-duplicated integer in a list where every integer occurs three times except for one integer
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
$begingroup$
The task
Given an array of integers, write a function to determine whether the
array could become non-decreasing by modifying at most 1 element.
For example, given the array [10, 5, 7], you should return true, since
we can modify the 10 into a 1 to make the array non-decreasing.
Given the array [10, 5, 1], you should return false, since we can't
modify any one element to get a non-decreasing array.
const arr = [10, 5, 7];
My functional solution
const isIncreasing = arr =>
let count = 0;
return[...arr].every((n, i) =>
if (arr[i + 1] && n > arr[i + 1]) ++count;
return count < 2;
);
;
console.log(isIncreasing(arr));
My imperative solution
function isIncreasing2(arr)
let count = 0;
for (let i = 0, len = arr.length; i < len; i++)
if (arr[i + 1] && arr[i] > arr[i + 1]) ++count;
if (count > 1) return false;
return true;
console.log(isIncreasing2(arr));
javascript algorithm programming-challenge functional-programming ecmascript-6
$endgroup$
add a comment |
$begingroup$
The task
Given an array of integers, write a function to determine whether the
array could become non-decreasing by modifying at most 1 element.
For example, given the array [10, 5, 7], you should return true, since
we can modify the 10 into a 1 to make the array non-decreasing.
Given the array [10, 5, 1], you should return false, since we can't
modify any one element to get a non-decreasing array.
const arr = [10, 5, 7];
My functional solution
const isIncreasing = arr =>
let count = 0;
return[...arr].every((n, i) =>
if (arr[i + 1] && n > arr[i + 1]) ++count;
return count < 2;
);
;
console.log(isIncreasing(arr));
My imperative solution
function isIncreasing2(arr)
let count = 0;
for (let i = 0, len = arr.length; i < len; i++)
if (arr[i + 1] && arr[i] > arr[i + 1]) ++count;
if (count > 1) return false;
return true;
console.log(isIncreasing2(arr));
javascript algorithm programming-challenge functional-programming ecmascript-6
$endgroup$
add a comment |
$begingroup$
The task
Given an array of integers, write a function to determine whether the
array could become non-decreasing by modifying at most 1 element.
For example, given the array [10, 5, 7], you should return true, since
we can modify the 10 into a 1 to make the array non-decreasing.
Given the array [10, 5, 1], you should return false, since we can't
modify any one element to get a non-decreasing array.
const arr = [10, 5, 7];
My functional solution
const isIncreasing = arr =>
let count = 0;
return[...arr].every((n, i) =>
if (arr[i + 1] && n > arr[i + 1]) ++count;
return count < 2;
);
;
console.log(isIncreasing(arr));
My imperative solution
function isIncreasing2(arr)
let count = 0;
for (let i = 0, len = arr.length; i < len; i++)
if (arr[i + 1] && arr[i] > arr[i + 1]) ++count;
if (count > 1) return false;
return true;
console.log(isIncreasing2(arr));
javascript algorithm programming-challenge functional-programming ecmascript-6
$endgroup$
The task
Given an array of integers, write a function to determine whether the
array could become non-decreasing by modifying at most 1 element.
For example, given the array [10, 5, 7], you should return true, since
we can modify the 10 into a 1 to make the array non-decreasing.
Given the array [10, 5, 1], you should return false, since we can't
modify any one element to get a non-decreasing array.
const arr = [10, 5, 7];
My functional solution
const isIncreasing = arr =>
let count = 0;
return[...arr].every((n, i) =>
if (arr[i + 1] && n > arr[i + 1]) ++count;
return count < 2;
);
;
console.log(isIncreasing(arr));
My imperative solution
function isIncreasing2(arr)
let count = 0;
for (let i = 0, len = arr.length; i < len; i++)
if (arr[i + 1] && arr[i] > arr[i + 1]) ++count;
if (count > 1) return false;
return true;
console.log(isIncreasing2(arr));
javascript algorithm programming-challenge functional-programming ecmascript-6
javascript algorithm programming-challenge functional-programming ecmascript-6
asked 4 mins ago
thadeuszlaythadeuszlay
963616
963616
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "196"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f217732%2fdetermine-whether-array-could-become-non-decreasing-by-modifying-at-most-1-eleme%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Code Review Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcodereview.stackexchange.com%2fquestions%2f217732%2fdetermine-whether-array-could-become-non-decreasing-by-modifying-at-most-1-eleme%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
var $window = $(window),
onScroll = function(e)
var $elem = $('.new-login-left'),
docViewTop = $window.scrollTop(),
docViewBottom = docViewTop + $window.height(),
elemTop = $elem.offset().top,
elemBottom = elemTop + $elem.height();
if ((docViewTop elemBottom))
StackExchange.using('gps', function() StackExchange.gps.track('embedded_signup_form.view', location: 'question_page' ); );
$window.unbind('scroll', onScroll);
;
$window.on('scroll', onScroll);
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown