LeetCode707 设计链表
创始人
2024-11-20 13:38:05
0

前言

题目:707. 设计链表
文档:代码随想录——设计链表
编程语言: C++
解题状态: 代码功底不够,只能写个大概

思路

主要考察对链表结构的熟悉程度,对链表的增删改查,比较考验代码功底以及对链表的掌握。本题中的一些边界条件也要注意。

代码

class MyLinkedList { public:     struct ListNode {         int val;         ListNode* next;         ListNode(int x) : val(x), next(nullptr) {}     };      MyLinkedList() {         _dummyHead = new ListNode(0);         _size = 0;     }          int get(int index) {         if (index > (_size - 1) || index < 0) {             return -1;         }          ListNode* cur = _dummyHead -> next;          while (index--) {             cur = cur -> next;         }          return cur -> val;     }          void addAtHead(int val) {         ListNode* newNode = new ListNode(val);          newNode -> next = _dummyHead -> next;         _dummyHead -> next = newNode;          _size++;     }          void addAtTail(int val) {         ListNode* newNode = new ListNode(val);         ListNode* cur = _dummyHead;          while (cur -> next != nullptr) {             cur = cur -> next;         }         cur -> next = newNode;          _size++;     }          void addAtIndex(int index, int val) {         if (index > _size) {             return;         }          ListNode* newNode = new ListNode(val);         ListNode* cur = _dummyHead;         while (index--) {             cur = cur -> next;         }         newNode -> next = cur -> next;         cur -> next = newNode;          _size++;     }          void deleteAtIndex(int index) {         if (index >= _size || index < 0) {             return;         }          ListNode* cur = _dummyHead;         while (index--) {             cur = cur -> next;         }         ListNode* tmp = cur -> next;         cur -> next = cur -> next -> next;         delete tmp;          _size--;     }      void printLinkedList() {         ListNode* cur = _dummyHead;         while (cur -> next != nullptr) {             cout << cur -> next -> val << " ";             cur = cur -> next;         }         cout << endl;     }  private:     int _size;     ListNode* _dummyHead; }; 

相关内容

热门资讯

辅助一下!微信小程序填大坑辅助... 辅助一下!微信小程序填大坑辅助器,广西老友玩辅助,果然存在有挂(哔哩哔哩)1、游戏颠覆性的策略玩法,...
解谜一下!悟空大厅辅助,决战手... 解谜一下!悟空大厅辅助,决战手游辅助,竟然是真的有挂(哔哩哔哩)亲,关键说明,悟空大厅辅助透视脚本安...
曝光一下!天天微友有辅助麻,战... 曝光一下!天天微友有辅助麻,战神辅助直装破解版,果然真的是有挂(哔哩哔哩)1、起透看视 天天微友有辅...
科普一下!奇迹山西辅助器,游戏... 科普一下!奇迹山西辅助器,游戏茶苑辅助,一贯真的是有挂(哔哩哔哩)1、打开软件启动之后找到中间准星的...
总结一下!微信小程序家乡大贰破... 总结一下!微信小程序家乡大贰破解版,乐乐休闲游戏辅助,一贯真的有挂(哔哩哔哩)微信小程序家乡大贰破解...
普及一下!西兵互娱辅助插件ap... 普及一下!西兵互娱辅助插件app,新上游拼十辅助,果然真的有挂(哔哩哔哩)1、进入游戏-大厅左侧-新...
教你一下!雀友会免费自动挂机脚... 教你一下!雀友会免费自动挂机脚本,大懒人斗十四辅助,一直存在有挂(哔哩哔哩)1、完成雀友会免费自动挂...
辅助一下!哈局透视辅助,新玄龙... 辅助一下!哈局透视辅助,新玄龙插件,其实有挂(哔哩哔哩)该软件可以轻松地帮助玩家将哈局透视辅助外卦神...
揭露一下!吉林心悦游戏辅助,八... 揭露一下!吉林心悦游戏辅助,八仙竞技馆辅助器下载,其实是有挂(哔哩哔哩);在进入吉林心悦游戏辅助软件...
了解一下!佛手在线大菠萝可以作... 了解一下!佛手在线大菠萝可以作弊码,新星游辅助软件下载,本来真的有挂(哔哩哔哩)1、在佛手在线大菠萝...