class ListNode:
def __init__(self, val):
self.val = val
self.next = None
class MyLinkedList:
def __init__(self):
self.size = 0 # 链表长度
self.head = ListNode(0)
def get(self, index: int) -> int:
cur = self.head
if index < 0 or index >= self.size:
return -1
for _ in range(index+1):
cur = cur.next
return cur.val
def addAtHead(self, val: int) -> None:
'''
add_head = ListNode(val)
add_head.next = self.head
self.head = add_head
'''
self.addAtIndex(0, val)
def addAtTail(self, val: int) -> None:
'''
add_end = ListNode(val)
cur = self.head
while cur.next:
cur = cur.next
cur.next = add_end
'''
self.addAtIndex(self.size, val)
def addAtIndex(self, index: int, val: int) -> None:
add_node = ListNode(val)
cur = self.head
if index > self.size:
return
elif index < 0: # 头部插入
index = 0
self.size += 1
for _ in range(index):
cur = cur.next
add_node.next = cur.next
cur.next = add_node
def deleteAtIndex(self, index: int) -> None:
cur = self.head
if index < 0 or index >= self.size:
return
self.size -= 1
for _ in range(index):
cur = cur.next
cur.next = cur.next.next

张无忌打怪兽
- 粉丝: 2059
最新资源
- 基于信息化技术下畜禽营养与饲料创新教学探讨(1).docx
- 图书管理系统-软件需求规格说明书(1).doc
- (完整word版)计算器的设计与实现-编译原理实验报告(word文档良心出品)(1).doc
- 最新100家国内知名网上购物网站排行榜(20220207005234)(1).pdf
- 基于SSH的宽带业务管理系统毕业设计(1)(1).docx
- 中国应用软件服务市场分析报告-行业运营态势与发展前景预测(1).docx
- 基于PLC控制的小车自动化送料系统设计(毕业论文).doc
- 河北网络营销公司分析互联网时代下企业容易走进的误区(1)(1).docx
- 新纪元气体灭火系统设计应用软件设计说明(1).doc
- 基于plc的锅炉监控系统的设计--大学毕业设计论文(1).doc
- 2022年四川计算机技术与软件专业技术资格水平考试考务工作通知范文(1).docx
- 2022年电子商务运营与管理测试卷及答案(题库)(1).docx
- 浅谈大数据环境下的数字图书馆建设(1).docx
- 数据库脱敏结构化数据安全保护神(1).docx
- 互联网技术合作协议(1).docx
- 金融数据库-sas系统快速入门(1).pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈


