数据结构
代号[K]
这个作者很懒,什么都没留下…
展开
-
_数据结构_堆_堆排序
文章目录堆的概念堆的概念如果有一个关键码的集合K = {k0,k1, k2,…,kn-1},把它的所有元素按完全二叉树的顺序存储方式存储在一个一维数组中,并满足:Ki <= K2i+1 且 Ki<= K2i+2 (Ki >= K2i+1 且 Ki >= K2i+2) i = 0,1,2…,则称为小堆(或大堆)。将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。堆 一定是一棵 完全二叉树当根结点为 i 时:其左子结点为:2i+1; 右子结点为2i+2原创 2020-06-04 18:06:32 · 385 阅读 · 0 评论 -
_数据结构_双向链表
文章目录双向链表结点双向链表初始化双向链表的插入头插法双向链表结点单链表的链式储存只有一个指示后继的指针域,所以,从某个结点出发只能顺指针往后寻查其他结点。若要寻查结点的直接前端,则需要从表头指针出发。 为了克服单链表的单向性缺点,在双向链表的结点中有两个指针域,一个指向直接后继,一个指向直接前趋。typedef struct double_list{ int val; //结点的值 struct double_list* next; //后继结点原创 2020-05-21 10:40:25 · 285 阅读 · 0 评论 -
_数据结构_单链表构造,增删改查
单链表是逻辑顺序结构,非物理顺序结构,是将存在不同地址的结点链接起来形成的。每个结点中的结构都相同,都是以,元素数据data和指向下一个结点*next的指针构成的这里给出百度百科中的单链表逻辑结构单链表构造单链表的结构单链表初始化结点头插查找结点任意位置插入删除结点链表反转源代码获取单链表的结构#include <stdio.h>#include <stdlib....原创 2020-02-22 15:41:29 · 340 阅读 · 0 评论 -
_数据结构_单链表反转
单链表逆置是数据结构中经常容易考到,也是一个重要的问题这里采用从前往后,一个一个逆置的方法实现单链表的整个反转源代码获取:https://github.com/akh5/C-/tree/master/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E5%8D%95%E9%93%BE%E8%A1%A8思路:这里head指针是为了保证有一个结点一直指向表头ol...原创 2020-02-10 22:02:29 · 161 阅读 · 0 评论 -
_数据结构_快速排序
快速排序时一种二叉树结构的交换排序算法 其基本思想时在序列中找一个元素作为基准值,将排序集合分割为两个子序列,左子序列中的所有元素都小于基准值,右子序列中的所有元素均大于基准值,再将左右子树重复此操作,知道所有元素都排列在相应位置源代码获取:https://github.com/akh5/C-/blob/master/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%...原创 2020-01-23 18:07:52 · 199 阅读 · 0 评论 -
_数据结构_归并算法
归并排序,是建立在归并操作上的一种有效的排序算法,核心思路是将序列分为序列分为许多子序列,再使每个子序列有序化后,将子序列合并源代码获取:https://github.com/akh5/C-/blob/master/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/%E6%8E%92%E5%BA%8F/merge_sort.cpp归并排序的基本思想,先将序列一分为二,...原创 2020-01-19 22:36:14 · 387 阅读 · 0 评论