-
要求太多,代码量太大,实在难以完成
-
在以前听说,好的程序员,可以在短时生成大量的代码,本题只方法才只有6个,根本不算多
-
每天手敲代码量太少,才是问题
-
#include <iostream>class MyLinkedList { private:struct Node {int val;Node* next;Node(int v): val(v), next(nullptr) {}};Node* visualHead;int len; public:MyLinkedList() {visualHead = new Node {0};len = 0;}int get(int index) {if (len == 0 || index < 0 || index > len - 1) return -1;auto *p = visualHead->next;for ( ; index--; p = p->next);return p->val;}void addAtHead(int val) {Node *new_node = new Node {val};auto* old_next = visualHead->next;visualHead->next = new_node;new_node->next = old_next;++len;}void addAtTail(int val) {Node *new_node = new Node {val};auto* p = visualHead;for (; p->next != nullptr; p = p->next);p->next = new_node;++len;}void addAtIndex(int index, int val) {if (index < 0 || index > len) return;Node *new_node = new Node {val};auto *p = visualHead;for ( ; index--; p = p->next);new_node->next = p->next;p->next = new_node;++len;}void deleteAtIndex(int index) {if (index >= len || index < 0) return;auto* p = visualHead;for (; index--; p = p->next);auto* delNode = p->next;p->next = p->next->next;delete delNode;delNode = nullptr;--len;} };int main() {MyLinkedList mll {};mll.addAtHead(3);mll.addAtTail(5);mll.addAtIndex(2, 8);mll.addAtIndex(2, 7);std::cout << mll.get(1) << std::endl;std::cout << mll.get(0) << std::endl;std::cout << mll.get(2) << std::endl;std::cout << mll.get(3) << std::endl;return 0; }
-
学习到的是在链中遍历时,使用
index--
是可以省略多定义变量的,但老师也说了,写成--index
会死循环,是什么道理? -
汇总
代码随想录算法训练营第三天 | 链表理论基础 | 707.设计链表
2025/3/19 0:45:59
来源:https://blog.csdn.net/taoyong001/article/details/144448948
浏览:
次
关键词:代码随想录算法训练营第三天 | 链表理论基础 | 707.设计链表
版权声明:
本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。
我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com
热文排行
- 华为 海思22AP10(SS524)H.265 编解码处理器用户指南
- 数据库物理结构设计
- 如何在 Mac 上清空硬盘后恢复丢失的数据?
- npm install puppeteer 报错 npm ERR! PUPPETEER_DOWNLOAD_HOST is deprecated解决办法
- 基于重要抽样的主动学习不平衡分类方法ALIS
- 《缺失MRI模态下的脑肿瘤分割的潜在相关表示学习》| 文献速递-深度学习肿瘤自动分割
- (2)Django生产环境数据库的切换以及环境配置python-dotenv方案
- 【微信小程序】自定义组件 - 组件的生命周期
- 概率图模型在自然语言处理中的应用
- 大模型分离架构学习记录
最新新闻
- 代码随想录算法训练营第三天 | 链表理论基础 | 707.设计链表
- 【前端】夯实基础 csshtmljs 50个练手项目(持续更新)
- 侯捷 | C++ | 内存管理 | 学习笔记(二):第二章节 std::allocator
- Scala的隐式转换
- AI Agent框架如何选择?LangGraph vs CrewAI vs OpenAI Swarm
- 【p2p、分布式,区块链笔记 分布式容错算法】: 拜占庭将军问题+实用拜占庭容错算法PBFT
- mysql——事务详解
- 怎麼解除IP阻止和封禁?
- 期末复习-计算机网络篇
- HCIP-HarmonyOS Application Developer 习题(九)
推荐新闻
- 代码随想录算法训练营第三天 | 链表理论基础 | 707.设计链表
- 【前端】夯实基础 csshtmljs 50个练手项目(持续更新)
- 侯捷 | C++ | 内存管理 | 学习笔记(二):第二章节 std::allocator
- Scala的隐式转换
- AI Agent框架如何选择?LangGraph vs CrewAI vs OpenAI Swarm
- 【p2p、分布式,区块链笔记 分布式容错算法】: 拜占庭将军问题+实用拜占庭容错算法PBFT
- mysql——事务详解
- 怎麼解除IP阻止和封禁?
- 期末复习-计算机网络篇
- HCIP-HarmonyOS Application Developer 习题(九)