【LeetCode-中等题】707. 设计链表

文章目录

    • 题目
    • 方法一:单向链表实现
    • 方法二:

题目

在这里插入图片描述

方法一:单向链表实现

  1. 新增或删除一个位置的节点==找到这个位置的前一个节点即可
class MyLinkedList {int size;ListNode head;public MyLinkedList() {size = 0;head = new ListNode(0);}public int get(int index) {if(index < 0 || index > size-1 ) return -1;  //注意index的范围是下标范围 ListNode pre = head;while(index >= 0){//找index位置的节点pre = pre.next;index --;}return pre.val;}public void addAtHead(int val) {addAtIndex(0, val);}public void addAtTail(int val) {addAtIndex(size, val);}public void addAtIndex(int index, int val) {if(index < 0 || index > size) return ;//注意index的范围是0到size  不是size-1  因为最后最大下标后面也可插入ListNode pre = head;while(index > 0){//找index前面一个节点的位置pre = pre.next;index -- ;}ListNode cur = new ListNode(val);cur.next = pre.next;pre.next =cur;size++;}public void deleteAtIndex(int index) {if(index < 0 || index >size-1) return ;//注意index的范围是0到size-1  ListNode pre = head;while(index > 0){//找index前面一个节点的位置pre = pre.next;index -- ;}pre.next = pre.next.next;size--;}
}class ListNode {//定义单链表int val;ListNode next;public ListNode(int val) {this.val = val;}
}

方法二:

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HTML中name和class,id的区别和联系

在HTML中&#xff0c;name、class和id是用于标识和选择元素的属性。 区别&#xff1a; name属性&#xff1a;用于标识表单元素&#xff0c;特别是在提交表单时&#xff0c;用于识别表单数据。name属性可以在同一表单中的多个元素中重复使用。class属性&#xff1a;用于为一个…

电子凭证试点深化后,企业如何应对?百望云提供电子凭证一体化解决方案!

今年5月&#xff0c;财政部、税务总局、人民银行、国务院国资委、国家档案局、标准委、国电联办、民航局、国铁集团九单位组织召开电子凭证会计标准深化试点启动会。 电子会计凭证的格式非常多样化&#xff0c;电子会计凭证的处理一直是企业的难点。此次试点工作虽然对企业的财…

基于SSM+Vue的医院医患管理系统

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用Vue技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

小白学Unity03-太空漫游游戏脚本,控制飞船移动旋转

首先搭建好太阳系以及飞机的场景 需要用到3个脚本 1.控制飞机移动旋转 2.控制摄像机LookAt朝向飞机和差值平滑跟踪飞机 3.控制各个星球自转以及围绕太阳旋转&#xff08;rotate()和RotateAround()&#xff09; 1.控制飞机移动旋转的脚本 using System.Collections; using…

R语言统计学DOE实验设计:用平衡不完全区组设计(BIBD)分析纸飞机飞行时间实验数据...

全文链接&#xff1a;http://tecdat.cn/?p31010 平衡不完全区组设计&#xff08;BIBD&#xff09;是一个很好的研究实验设计&#xff0c;可以从统计的角度看各种所需的特征&#xff08;点击文末“阅读原文”获取完整代码数据&#xff09;。 最近我们被客户要求撰写关于BIBD的研…

Windows 性能突然打鸡血,靠 Bug 修复了多年顽疾

要说 的 Bug 集中地&#xff0c;当属资源管理器。 速度缓慢、卡顿、崩溃&#xff0c;不同设备、不同版本的用户都有不同的感受。 严格来说&#xff0c;这其实是 Windows 的传统艺能&#xff0c;要完美修复可不容易。 而作为小老弟的文件资源管理器&#xff0c;时不时来个无响…

腾讯mini项目-【指标监控服务重构】2023-07-31

今日已办 trace_id传播 关于如何使用 trace_id 创建 span 的思路 【暂未实现 & 测试】 调研 SpanProcessor 阅读源码的test 明日待办 根据 trace_id 创建 span&#xff0c;应该需要 parent span_id 才能有 trace 的树状 span 的关系

自动化办公更简单了:新版python-office,有哪些更新?

#职场经验谈# 大家好&#xff0c;这里是程序员晚枫&#xff0c;小破站/小红薯都叫这个名。 去年4月开源了一个Python自动化办公项目&#xff1a;python-office&#xff0c;GitHub和Gitee都能看到。1行代码实现复杂的自动化办公任务&#xff0c;帮助不懂代码的小白&#xff0c;…

FFMPEG视频压缩与Python使用方法

一、简介 FFMPEG 是一个完整的&#xff0c;跨平台的解决方案&#xff0c;记录&#xff0c;转换和流音频和视频。 官网&#xff1a;https://ffmpeg.org/ 二、安装 1、Linux&#xff1a; sudo apt install ffmpeg 2、Mac: brew install ffmpeg 3、Windows: 下载文件&#…

时间复杂度课后习题

目录 选择题 编程题 1.消失的数字 方法1&#xff1a;辅助数组法 方法2&#xff1a;位运算法 方法3&#xff1a;求和相减法 2.轮转数组 方法1&#xff1a;额外数组法 方法2&#xff1a;数组翻转法 选择题 1.给定一个整数sum&#xff0c;从有N个有序元素的数组中寻找元素…

时序分解 | MATLAB实现北方苍鹰优化算法NGO优化VMD信号分量可视化

时序分解 | MATLAB实现北方苍鹰优化算法NGO优化VMD信号分量可视化 目录 时序分解 | MATLAB实现北方苍鹰优化算法NGO优化VMD信号分量可视化效果一览基本介绍程序设计参考资料 效果一览 基本介绍 北方苍鹰优化算法NGO优化VMD&#xff0c;对其分解层数&#xff0c;惩罚因子数做优化…

视频图像处理算法opencv模块硬件设计图像颜色识别模块

1、Opencv简介 OpenCV是一个基于Apache2.0许可&#xff08;开源&#xff09;发行的跨平台计算机视觉和机器学习软件库&#xff0c;可以运行在Linux、Windows、Android和Mac OS操作系统上 它轻量级而且高效——由一系列 C 函数和少量 C 类构成&#xff0c;同时提供了Python、Rub…