![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
算法第一深情
一直认为读书可以改变自己
展开
-
图的基本操作
【代码】图的基本操作。原创 2022-11-13 18:58:56 · 514 阅读 · 1 评论 -
数据结构第三章(栈和队列)
栈是限定在表尾进行插入或删除操作的线性表线性表的表尾对于栈来说称为栈顶,表头称为栈底,不含元素的栈称为空栈栈的修改是按照后进先出的原则修改的队列是限定在表的一端进行插入,而在另一端进行删除元素允许插入的一端称为队尾,允许删除的一端称为队头队列的修改是按照先进先出的原则修改的顺序栈是指利用顺序储存结构实现的栈,即利用一组地址连续储存单元依次存放自栈底到栈顶的元素,指针top指示栈顶元素在顺序栈中的地址,指针base指示栈底在顺序栈中的地址1,顺序栈的定义。原创 2022-10-08 08:32:22 · 1733 阅读 · 0 评论 -
234.回文链表
请你判断该链表是否为回文链表。输入:head = [1,2]给你一个单链表的头节点。空间复杂度解决此题?原创 2022-09-17 19:39:54 · 189 阅读 · 0 评论 -
206.反转链表
请你反转链表,并返回反转后的链表。原创 2022-09-16 22:04:42 · 99 阅读 · 0 评论 -
203. 移除链表元素
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点。具体实现方面,由于链表的头节点head有可能需要被删除,因此创建哑节点 temp,令 temp初始化cur,然后遍历链表进行删除操作。输入:head = [1,2,6,3,4,5,6], val = 6。输入:head = [7,7,7,7], val = 7。输入:head = [], val = 1。输出:[1,2,3,4,5]空间复杂度:O(1);原创 2022-09-16 22:02:59 · 152 阅读 · 0 评论 -
LeedCode21.合并两个有序链表
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。3,依次比较链表l1,l2d的节点,节点的数据域小的与链表l3链接,就这样依次比较。4,那么链表l1,l2必有一个非空的,将非空的链表与l3链接。输入:l1 = [1,2,4], l2 = [1,3,4]2,将链表,l1,l2,分别指向各自的第一个节点。输入:l1 = [], l2 = [0]两个链表的节点数目范围是 [0, 50]输入:l1 = [], l2 = []输出:[1,1,2,3,4,4]原创 2022-09-16 17:13:32 · 122 阅读 · 0 评论 -
88.删除排序链表中的重复元素
链接:https://leetcode.cn/problems/remove-duplicates-from-sorted-list。给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次。1,用cur代替head,是因为head是链表的起始地址,如果不新开一个,最后找不到链表的起始位置。3,已知链表是升序的,所以进行一次遍历就可以了。输入:head = [1,1,2,3,3]4,如果遇到相同的数据域,则删除一个节点。输入:head = [1,1,2]输出:[1,2,3]原创 2022-09-16 15:21:57 · 125 阅读 · 0 评论 -
删除链表的节点
删除链表的节点原创 2022-09-15 14:08:05 · 86 阅读 · 0 评论 -
数据结构(第一章绪论)
结构简单理解,就是关系,严格来说,就是指各个部分相互搭配和排列的方式。原创 2022-09-10 18:24:32 · 89 阅读 · 0 评论