I will grind on leetcode, can anybody review my solution It really help me. I solve this in javascript.
Question Link: https://leetcode.com/problems/kids-with-the-greatest-number-of-candies/
Solution:
var kidsWithCandies = function(candies, extraCandies) {
const maxElement = Math.max(...candies);
const result = [];
for (let i = 0; i < candies.length; i++) {
let candie = candies[i] + extraCandies;
result.push(candie < maxElement ? false: true)
}
return result;
};
And Is wrost time complexity of this code is O(n)?
ilenia
3
you don’t need a ternary here, you never need it when you have an expression that evaluates to a boolean
also, yes, it seems time complexity is O(n)
1 Like
The algorithm is sound and optimal, yes this is O(n). The way it is written could be improved slightly:
- you do not need to use ternary expressions when the value you are assigning as a result are boolean.
const c=a<=b; //c is true when a <= b, false when a > b
const c=a>b?false:true // same as above
- Since you are going over the totality of an array to form an entirely new array, this is the perfect opportunity to use
Array.prototype.map()
1 Like
system
Closed
5
This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.