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

相关推荐
地平线开发者34 分钟前
征程 6X 之 Memory corruption 问题分析方法
算法·自动驾驶
地平线开发者37 分钟前
Sparse4D:从 Dense BEV 到工程可落地的世界建模
算法·自动驾驶
shehuiyuelaiyuehao1 小时前
算法18,二分查找
java·开发语言·算法
50万马克的面包1 小时前
三子棋小游戏(C语言详解)
c语言·开发语言·算法
小白小宋2 小时前
从“被砍掉的频谱“到无码间串扰:升余弦滚降滤波器的完全解读
人工智能·算法·机器学习
WL_Aurora2 小时前
【每日一题】差分数组
算法
罗超驿2 小时前
2.LeetCode 1089. 复写零——双指针解法学习笔记
java·算法·leetcode
Struggle_97552 小时前
算法知识-数学
算法
khalil10202 小时前
代码随想录算法训练营Day-41动态规划08 | 121. 买卖股票的最佳时机、122.买卖股票的最佳时机II、123.买卖股票的最佳时机III
数据结构·c++·算法·leetcode·动态规划