实现C++ List,双端链表和静态链表

(nextMove) { ptr = ptr->next; nodePos++; } else { ptr = ptr->previous; nodePos--; } } return{}; } 静态链表 #define NodeSize sizeof(NodeT) * m_size template<typename T> class StaticList :public ContainerBase...

相交链表(数据结构)

160. 相交链表 - 力扣(LeetCode)https://leetcode.cn/problems/intersection-of-two-linked-lists/description/ 题目 解决思路 1,找到相交的点 相交链表的关键也就是找到相交的点,所以我们需要首先判断有没有相交的节点,没有相交的节点结束返回NULL,有相交的节点继续,此时我们已经算出各自的链表的长度(一次循环) 2...

【数据结构和算法】--链表

链表 这里只记录.cpp的测试代码 #include "MyList.hpp"#include <iostream>using namespace std; void printList(pNode headNode){ cout << "*** printList ****" << endl; pNode tempNode, curNode; if (nullptr == headNode)...

【leetcode面试经典150题】62. K 个一组翻转链表(C++)

【题目描述】 给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。 【示例一】 输入:head = [1,2,3,4,5], k = 2输出:[2,1,4,3,5] 【示例二】 输入:head ...

【leetcode面试经典150题】64. 删除排序链表中的重复元素 II(C++)

【题目描述】 给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。 【示例一】 输入:head = [1,2,3,3,4,4,5]输出:[1,2,5] 【示例二】 输入:head = [1,1,1,2,3]输出:[2,3] 【提示及数据范围】 链表中节点数目在范围 [0, 300] 内-100 <= Node.val <= 100题...

[C语言][数据结构][链表] 双链表的从零实现!

目录 零.必备知识 0.1 一级指针 && 二级指针 0.2 双链表节点的成员列表         a. 数据         b. 后驱指针         c. 前驱指针 0.3 动态内存空间的开辟 一. 双链表的实现与销毁         1.1 节点的定义         1.2 双向链表的初始化 && 创建新节点         1.3 尾插          1.4 头插         ...

数据结构之单链表相关刷题

找往期文章包括但不限于本期文章中不懂的知识点: 数据结构之单链表的相关知识点及应用-CSDN博客  下面题目基于上面这篇文章:  下面有任何不懂的地方欢迎在评论区留言或者私信我哦! 题目链接: 206.反转链表 题目描述: 思路一:创建一个新的链表,把原链表中的节点头插到新链表中。 /** * Definition for singly-linked list. * struct ListNode {...

C语言实现双向链表

前言        在讲双向链表之前,我会先总结一下前面的知识点,如需直接看双向链表的,可以直接跳转到双向链表的实现去阅读~~ 链表的分类        在上一篇的8道算法题,我提到了用哨兵位可以很好地进行插入,这个哨兵位就是头结点!还有在解决约瑟夫问题时,我提到了使用循环链表的概念,循环链表就是头尾相连,形成一个环。 链表的分类有这几种情况:带不带头(头结点==哨兵位),单向还是双向(就是一个节点...

C#面:简述 数组、链表、哈希、队列、栈数据结构特点,各自优点和缺点

C# 数组、链表、哈希、队列和栈是常见的数据结构,它们各自有不同的特点、优点和缺点。 数组: 特点:数组是一种线性数据结构,它由一组相同类型的元素组成,这些元素在内存中是连续存储的。优点:数组具有快速的随机访问能力,可以通过索引直接访问任意位置的元素。缺点:数组的大小是固定的,一旦创建后无法改变大小,需要预先知道数组的长度。插入和删除元素的操作比较低效,需要移动其他元素。 链表: 特点:链表是一种非连...

链表】1移除链表元素

这里写自定义目录标题 一、题目二、先考虑头结点,再考虑非头结点三、虚拟头结点解决 一、题目 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 二、先考虑头结点,再考虑非头结点 头结点的值恰好等于要删除的值,则需要将头结点后移非头结点的值等于要删除的值, 则将要删除的节点的上一个节点next 指向要删除节点的nex...
© 2024 LMLPHP 关于我们 联系我们 友情链接 耗时0.005294(s)
2024-05-30 17:53:13 1717062793