数据结构
文章平均质量分 87
持之以恒的天秤
这个作者很懒,什么都没留下…
展开
-
二叉树的链式结构和遍历(下)
又见面了,小伙伴们。今天我们继续来学习二叉树,今天的内容相对来说比较容易理解,前提是需要你们自己动手画图才会好理解。眼过千遍不如手过一遍。所以小伙伴们要多动手哦。直接开始今天的学习吧。原创 2024-03-23 14:02:24 · 759 阅读 · 1 评论 -
二叉树的初步学习和顺序结构实现(上)
好了,小伙伴们,今天我们就先学到这里,下一节我们学习二叉树的链式结构的实现,今天的知识点一定要好好理解,该画图的时候画图,不要嫌麻烦,要为后面的学习打基础。原创 2024-03-17 14:31:33 · 839 阅读 · 1 评论 -
双向带头循环链表的增删改查
小伙伴们,我们在上一次学习了单链表,最后也提到了链表的分类,总共有8种类型,这次我们就来学习链表最常见的一种类型,就是我们简单来回顾一下。注意:这⾥的“带头”跟前⾯我们说的“头节点”是两个概念,实际前⾯的在单链表阶段称呼不严谨,但是为了同学们更好的理解就直接称为单链表的头节点。带头链表⾥的头节点,实际为“哨兵位”,哨兵位节点不存储任何有效元素,只是站在这⾥“放哨的”“哨兵位”存在的意义:遍历循环链表避免死循环。当链表中只有哨兵位节点的时候,我们称该链表为空链表,即哨兵位是不能删除的。原创 2024-03-03 13:34:21 · 380 阅读 · 0 评论 -
LeetCode题目 移除元素
例如,函数返回的新长度为 2 ,而 nums = [2,2,3,3] 或 nums = [2,2,0,0],也会被视作正确答案。如果src指向的值不等于val的值,那么就把src指向的值给dst指向的值,然后src和dst都向后走,即就是arr[dst]=arr[src];思路1:遇到等于val的元素,将val的位置之后的元素向前挪动,这个思路感兴趣的小伙伴们可以试试,这个思路应该是大多数人都会想到的。函数应该返回新的长度5, 并且 nums 中的前五个元素为0,1,3,0,4。元素的顺序可以改变。原创 2024-01-23 14:19:47 · 388 阅读 · 0 评论 -
合并两个有序数组
定义q1,q2,q3三个变量,q1的位置是在nums1数组有效长度的位置,即q1=m-1;q2的位置是在nums2数组最后一个元素的位置,即q2=n-1;q3的位置是在nums1数组总长度的位置,即q3=m+n-1。首先让q1和q2进行比较,谁大谁就放在q3的位置,然后让大的和q3都向前走一位,即q1/q2--,q3--,重复上述步骤,如果2个元素相等,那么q1或者q2放在q3的位置,然后向前走一位。将nums2中的数据直接保存到nums1中,通过排序算法对nums1中的所有数据统一进行排序。原创 2024-01-23 15:35:38 · 371 阅读 · 0 评论 -
顺序表的增、删、改、查
/存储数据的底层结构//记录顺序表的空间大小int size;//记录顺序表当前有效的数据个数}SL;细心的小伙伴们发现我也给结构体取了一个别名SL,这样也是为了方便接下来的使用。当然你也可以这样写//存储数据的底层结构//记录顺序表的空间大小int size;//记录顺序表当前有效的数据个数。原创 2024-01-24 21:16:23 · 1107 阅读 · 0 评论 -
单链表的增删改查
小伙伴们,顺序表的增删改查已经学会了,今天我们学习比顺序表还难“亿”点点的链表,也需要增删改查。跟顺序表一样,还是需要创建三个文件SList.h,SList.c和test.c,然后做一些准备工作,具体文件的说明跟顺序表一样,忘了的小伙伴们可以去看一下哦。好了,进入单链表的学习吧。原创 2024-02-02 15:16:37 · 904 阅读 · 0 评论 -
单链表的经典题目练习
给你一个链表的头节点。原创 2024-02-04 15:02:19 · 884 阅读 · 0 评论