力扣做题笔记

1. nums.pop(nums[right]) 用法错误

在 JavaScript 中,Array.prototype.pop() 方法是用于移除数组中的最后一个元素,并返回被移除的那个元素。它不接受参数作为要移除元素的值,而是直接移除数组末尾的元素。

正确的做法应该是先获取要移除的索引,然后使用该索引来移除元素。在这里,你想要移除的应该是索引为 right 的元素,正确写法应该是 nums.pop()(这样会移除最后一个元素,在当前循环逻辑下符合需求)或者 nums.splice(right, 1)(明确指定要移除索引为 right 的那个元素)。

2. nums.shift(nums[left]) 用法错误

类似地,Array.prototype.shift() 方法用于移除数组的第一个元素,并返回被移除的元素。它同样不接受参数作为要移除元素的值,而是直接移除数组开头的元素。

正确的做法是,如果要移除索引为 left 的元素,可以使用 nums.splice(left, 1)

关于输出结果错误的原因

由于代码中存在上述错误的数组操作方法调用,导致数组 nums 的元素移除操作没有按照预期进行,从而使得后续计算平均值的逻辑也出现了偏差。

在正确的代码中,经过修正数组元素的移除操作后,循环应该能正确地从排序后的数组两端选取元素计算平均值,并最终得到正确的最小平均值。

以下是修正后的代码示例:

相关推荐
你怎么知道我是队长14 分钟前
C语言---枚举变量
c语言·开发语言
李慕婉学姐18 分钟前
【开题答辩过程】以《基于JAVA的校园即时配送系统的设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·开发语言·数据库
吃茄子的猫20 分钟前
quecpython中&的具体含义和使用场景
开发语言·python
web小白成长日记22 分钟前
企业级 Vue3 + Element Plus 主题定制架构:从“能用”到“好用”的进阶之路
前端·架构
云栖梦泽34 分钟前
易语言中小微企业Windows桌面端IoT监控与控制
开发语言
数据大魔方44 分钟前
【期货量化实战】日内动量策略:顺势而为的短线交易法(Python源码)
开发语言·数据库·python·mysql·算法·github·程序员创富
APIshop1 小时前
Python 爬虫获取 item_get_web —— 淘宝商品 SKU、详情图、券后价全流程解析
前端·爬虫·python
风送雨1 小时前
FastMCP 2.0 服务端开发教学文档(下)
服务器·前端·网络·人工智能·python·ai
XTTX1101 小时前
Vue3+Cesium教程(36)--动态设置降雨效果
前端·javascript·vue.js
LYFlied2 小时前
WebGPU与浏览器边缘智能:开启去中心化AI新纪元
前端·人工智能·大模型·去中心化·区块链