力扣 设计链表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

相关推荐
Liu628885 小时前
C++中的工厂模式高级应用
开发语言·c++·算法
AI科技星5 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘
参.商.6 小时前
【Day41】143. 重排链表
leetcode·golang
条tiao条6 小时前
KMP 算法详解:告别暴力匹配,让字符串匹配 “永不回头”
开发语言·算法
干啥啥不行,秃头第一名6 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
zzh940776 小时前
Gemini 3.1 Pro 硬核推理优化剖析:思维织锦、动态计算与国内实测
算法
2301_807367197 小时前
C++中的解释器模式变体
开发语言·c++·算法
愣头不青7 小时前
617.合并二叉树
java·算法
MIUMIUKK7 小时前
双指针三大例题
算法
灵感__idea8 小时前
Hello 算法:复杂问题的应对策略
前端·javascript·算法