【面试经典150题】删除有序数组中的重复项-JavaScript版

news2024/9/28 9:50:10

题目链接

思路1:使用set。

/**
 * @param {number[]} nums
 * @return {number}
 */
var removeDuplicates = function(nums) {
	const uniqueSet=new Set();
    for(let i=0;i<nums.length;i++){
        uniqueSet.add(nums[i]);
    }
    const uniqueArray=Array.from(uniqueSet);
    nums.length=0;
    nums.push(...uniqueArray);
    return nums.length;
};

时间复杂度: O ( n u m s . l e n g t h ) O(nums.length) O(nums.length)

空间复杂度: O ( n u m s . l e n g t h ) O(nums.length) O(nums.length)

在这里插入图片描述

思路2:使用Hash数组标识重复项。

/**
 * @param {number[]} nums
 * @return {number}
 */
var removeDuplicates = function(nums) {
	let hash=[];
    let uniqueCount=0;
    for(let i=0;i<nums.length;i++){
        if(!hash[nums[i]]){
            hash[nums[i]]=true;
            nums[uniqueCount++]=nums[i];
        }
    }
    nums.length=uniqueCount;
    return uniqueCount;
};

在这里插入图片描述

时间复杂度: O ( n u m s . l e n g t h ) O(nums.length) O(nums.length)

空间复杂度: O ( n u m s . l e n g t h ) O(nums.length) O(nums.length)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/920682.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【项目经理】项目管理杂谈

杂谈 1. 走上管理岗位&#xff0c;别再自己埋头干了2. 如何更好地管理项目进度3. 管理是“管事”而不是“管人”4. 让领导欣赏的十个沟通技巧在这里插入图片描述 1. 走上管理岗位&#xff0c;别再自己埋头干了 2. 如何更好地管理项目进度 3. 管理是“管事”而不是“管人” 4. 让…

书单背景图片怎么做?分享个手机轻松制作的方法

添加背景图片可以让书单变得更加吸引人&#xff0c;同时也能够让读者更好地理解该书单所代表的主题。在这篇文章中&#xff0c;我们将分享如何为书单添加背景图片&#xff0c;以及需要注意的地方。 如果你想在手机上把书单制作成视频的话&#xff0c;可以使用一些编辑应用&…

Docker容器学习:搭建ownCloud个人网盘

目录 前提环境 拉取镜像 创建容器 创建mysql容器&#xff1a; 创建OwnCloud容器&#xff0c;并连接到数据库&#xff1a; 创建Nginx容器&#xff1a; 配置nignx 前提环境 基于Centos7.9版本环境安装Docker-ce&#xff1a;24.0.5 拉取镜像 docker pull mysql:5.6 dock…

23年下半年软考系统架构设计师(最新报名时间)

高级系统架构设计师&#xff0c;有一定的难度&#xff0c;值得挑战一下 23年下半年软考架构启用最新版考试大纲&#xff0c;而且报名时间也推迟了&#xff0c;考试形式也改了&#xff0c;由笔试改为了机考&#xff0c;所以今年报名一定要多关注一下&#xff01;&#xff01; 软…

【LeetCode】167. 两数之和 II - 输入有序数组 - 双指针

目录标题 2023-8-23 09:25:08 2023-8-23 09:25:08 自己写的不是常量级的额外空间&#xff0c;但是写出来了&#xff0c;记录一下。 下次写的时候&#xff0c;请用双指针。 &#xff08;其实我想了想一想&#xff0c;双指针就没感觉出来&#xff1a;因为我只想到双指针两个都…

深度学习--LSTM网络、使用方法、实战情感分类问题

1.LSTM基础 长短期记忆网络&#xff08;Long Short-Term Memory&#xff0c;简称LSTM&#xff09;&#xff0c;是RNN的一种&#xff0c;为了解决RNN存在长期依赖问题而设计出来的。 LSTM的基本结构&#xff1a; 2.LSTM的具体说明 LSTM与RNN的结构相比&#xff0c;在参数更新…

聊一下最近有个网红铁头惩恶扬善举报新东方校外补课引起争议

最近有个网红&#xff0c;铁头打假&#xff0c;举报新东方校外补课上了热搜&#xff0c;引起了争议 最近他自己在一次直播带货当中&#xff0c;翻车了的 铁头敢端了学生的课桌&#xff0c;家长就敢掀了他的直播间 而因自己&#xff0c;我不用读书&#xff0c;我有社会经验&…

双碳目标下DNDC模型教程

详情点击链接&#xff1a;双碳目标下DNDC模型建模方法及在土壤碳储量、温室气体排放、农田减排、土地变化、气候变化中的实践技术应用教程 前沿 碳循环的精确模拟是实现“双碳”行动的关键。DNDC&#xff08;Denitrification-Decomposition&#xff0c;反硝化-分解模型&#…

前端三部曲之一HTML

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

同样都是手机卡,为什么线下的手机卡和线上的手机卡差距这么大?

大家好&#xff0c;我是搜卡之家&#xff0c;今天这篇文章就带大家了解一下线上流量卡和线下流量卡有哪些区别&#xff1f; ​ 众所周知&#xff0c;如果我们在营业厅办理流量业务&#xff0c;30G的流量不管是哪个运营商可能就需要将近100块钱&#xff0c;是为什么线上申请的流…

简单聊聊uniapp和uview组件库一起开发

简单的聊聊uniapp和uview组件库的开发 uniapp是一个基于Vue.js的跨平台开发框架&#xff0c;可以同时开发H5、微信小程序、App等多个平台的应用。这样可以减少开发人员的工作量&#xff0c;提高开发效率。 官网&#xff1a;https://uniapp.dcloud.net.cn/ uView是uni-app生态…

hive-列转行

转成 select customer_code,product_type from temp.temp_xx LATERAL VIEW explode(SPLIT(product_types,,)) table_tmp AS product_type where customer_code K100515182

DNS解析中的A记录、AAAA记录、CNAME记录、MX记录、NS记录、TXT记录、SRV记录、URL转发等

DNS解析中的A记录、AAAA记录、CNAME记录、MX记录、NS记录、TXT记录、SRV记录、URL转发等 1. DNS域名解析中添加的各项解析记录2. DNS解析中一些问题简要的介绍DNS 的 SOA记录&#xff1a;参考资料 域名注册完成后首先需要做域名解析&#xff0c;域名解析就是把域名指向网站所在…

数组习题答案

基础题目 第一题&#xff1a;需求实现 模拟大乐透号码&#xff1a; 一组大乐透号码由10个1-99之间的数字组成定义方法&#xff0c;打印大乐透号码信息 代码实现&#xff0c;效果如图所示&#xff1a; 开发提示&#xff1a; 使用数组保存录入的号码 参考答案&#xff1a; p…

浅析三维模型OBJ格式轻量化处理常见问题与处理措施

浅析三维模型OBJ格式轻量化处理常见问题与处理措施 在三维模型OBJ格式轻量化处理过程中&#xff0c;可能会遇到一些问题。以下是一些常见问题以及相应的解决方法&#xff1a; 1、文件大小过大&#xff1a; OBJ格式的三维模型文件通常包含大量的顶点、面片和纹理信息&#xff0…

【Windows iTunes】Windows 10 下如何不通过 Microsoft Store 下载 iTunes,Apple 官网直链下载,图文教程

目录 写在前头&#xff08;解决办法&#xff09;图文教程  第一步 搜索  第二步 下载 写在前头&#xff08;解决办法&#xff09; 在 Apple 官网&#xff08;https://www.apple.com.cn/&#xff09;搜索“ iTunes 下载 ”&#xff0c;进入下载页面&#xff08;https://www.…

【深入理解Linux内核锁】四、自旋锁

我的圈子: 高级工程师聚集地 我是董哥,高级嵌入式软件开发工程师,从事嵌入式Linux驱动开发和系统开发,曾就职于世界500强企业! 创作理念:专注分享高质量嵌入式文章,让大家读有所得! 文章目录 1、什么是自旋锁?2、自旋锁思想3、自旋锁的定义及实现3.1 API接口3.2 API实…

LAMP配置与应用

目录 一、LAMP架构的组成 1、WEB资源类型 2、LAMP架构的组成 二、编译安装LAMP 编译安装apache 1、环境准备 2、导入apache相关压缩安装包&#xff0c;然后安装编译环境 3、解压软件包&#xff0c;并移动apr包与apr-util包到安装目录中&#xff0c;并切换到http解压出…

小米汽车开启工人招聘:年产能30万辆,雷军造车目标又迈进一步

新浪科技报道指出&#xff0c;小米汽车近日已经开启了工人招聘&#xff0c;包括涂装操作工、电池车间操作工等多个岗位。这表明小米汽车即将进入生产阶段&#xff0c;也进一步证实了此前关于小米获得造车资质的传闻。 根据小米此前给出的时间表&#xff0c;在2024年上半年&…

Java——一个简单的油耗计算机程序

该代码是一个简单的油耗计算机程序&#xff0c;使用了Java的图形化界面库Swing。具体分析如下&#xff1a; 导入必要的类和包&#xff1a; import javax.swing.*; import java.awt.*;代码中导入了用于创建图形界面的类和其他必要的类。 定义main类&#xff1a; public class f…