力扣 设计链表707

循环边界的判断

复制代码
index = 3;
cur = dummyHead;
while(index--)
{
cur = cur->next;
}

当到达边界时,cur从零开始,index = 0,cur=2

如果要在index = 3前面添加元素,则newnode->next = cur->next cur->next = newnode,顺序不可变

如果是在末尾添加元素

复制代码
cur = dummyHead;
while(cur->next != nullptr)
{
cur = cur->next;
}

循环结束,cur指向链表的末尾,

如果在链表末尾添加元素,cur->next = newnode

注意size大小的变化

注意private定义时,定义ListNode *dummyHead

注意索引index ,获取index下标值时,非法判断 index >size-1

注意删除时,操作完毕后再delete tmp

相关推荐
2501_945424802 分钟前
高性能计算资源调度
开发语言·c++·算法
Tisfy10 分钟前
LeetCode 1594.矩阵的最大非负积:动态规划O(mn)
leetcode·矩阵·动态规划·dp
2301_7765087210 分钟前
C++中的组合模式变体
开发语言·c++·算法
Frostnova丶13 分钟前
LeetCode 1594.矩阵中最大的非负乘积
算法·leetcode·矩阵
We་ct14 分钟前
LeetCode 162. 寻找峰值:二分高效求解
前端·算法·leetcode·typescript·二分·暴力
丶小鱼丶14 分钟前
数据结构和算法之【二叉树】
java·数据结构·算法
hanlin0314 分钟前
刷题笔记:力扣第38题-外观数列
算法·leetcode
2301_7938046917 分钟前
模板代码安全性增强
开发语言·c++·算法
测试_AI_一辰18 分钟前
Agent & RAG 测试工程笔记 13:RAG检索层原理拆解:从“看不懂”到手算召回过程
人工智能·笔记·功能测试·算法·ai·ai编程
干啥啥不行,秃头第一名19 分钟前
C++中的观察者模式
开发语言·c++·算法