- 博客(7)
- 收藏
- 关注
原创 排序的思想图片
让key 在数组左边,设置了数组左边left 和右边right,left往左边走找到比key大,right往右边走 找到比key小,当left 和right找到对应的数字后进行交换,当走到相遇时让key和left right的数字进行交换这个key的位置也发生了改变。情况二:R遇L,在相遇这一轮,L就没动,R在移动,跟L相遇,相遇位置就是L的位置,L的位置就是key的位置 or 交换过一些轮次,相遇L位置一定比key小。降序: 9,8,7,6, 5, 4,3,3,2,1,0。
2024-03-12 13:04:54 222
原创 顺序表、单链表、双向循环链表
/改变的是plist的值,不是plist本身。改变的是plist的值,不是plist本身。顺序表逻辑结构是线性的,物理结构一定是线性的,顺序表的底层是数组。phead->(解引用) 修改的是值,不会影响phead的地址空间。单链表:由一个一个节点组成,节点由存储的数据和结构体指针组成。动态顺序表:数组长度是可以动态申请和扩容的 int*arr。双向循环链表:存储数据,前驱节点指针和后继节点指针。plist = malloc()//改变了plist。Int*arr 存储数据的底层结构。
2024-03-07 12:51:39 438
原创 二叉树->堆
选择解决方法是首尾数据交换,删除,再调堆。用向下调整法(前提是左子树和右子树是大堆/小堆)堆顶的删除不是直接把第一个数给删除,再往前挪动覆盖,不能保证还是堆,重新建堆麻烦。堆物理结构是数组,逻辑结构是二叉树。二叉树分完全二叉树和满二叉树。二叉树-堆:底层是数组。
2024-03-05 09:06:51 369
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人