题解 | #数组最大值#

数组最大值

https://www.nowcoder.com/practice/7b556cd6c4184e7799199f43f18fa5b1

一个绕远路但很有趣的思路:

  1. 用filter过滤出唯一满足条件的元素组成新数组,直接取[0]
  2. 条件:对于某个元素,如果原数组中存在一个元素比它大,那么它不是最大值

需要注意的是,forEach中return false只会退出循环,不会直接返回给filter,所以加了一个标记位

function _max(array) {
	return array.filter((value) => {
		let is_max = true;
		array.forEach((element) => {
			if (element > value) {
				is_max = false;
				return false;
			}
		});
		return is_max;
	})[0];
}

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务