Skip to content

hnpeng/C-DataStructLib

Repository files navigation

C-DataStructLib

Reusable C language DataStruct LIB. Develop by QtCreator5.10.1 Compiler: Apple Clang

  • TestCase (测试用例)- 测试驱动开发方式
    • SeqListCase
    • LinkListCase
    • StaticListCase
    • CircleListCase
    • DLinkListCase
    • SeqStackCase
    • LinkStackCase
    • LittleAlgorithmCase
    • SeqQueueCase
    • LinkQueueCase
    • SQueueCase
    • SStackCase
  • SeqList(顺序表)
    • 顺序表的创建 时间复杂度O(1)
    • 节点的插入 时间复杂度O(n)
    • 节点的删除 时间复杂度O(n)
    • 节点的获取 时间复杂度O(1)
    • 顺序表的长度 时间复杂度O(1)
    • 顺序表的容量 时间复杂度O(1)
    • 顺序表的清空 时间复杂度O(1)
    • 顺序表的销毁 时间复杂度O(1)
    • 顺序表的反转 时间复杂度O(n)
  • LinkList(单链表)
    • 单链表的创建 O(1)
    • 节点的插入 O(n)
    • 节点的删除 O(n)
    • 节点的获取 O(n)
    • 单链表的长度 O(1)
    • 单链表的清空 O(n)
    • 单链表的销毁 O(n)
    • 单链表的反转 O(n)
  • StaticList(静态链表)
    • 静态链表的创建 O(1)
    • 节点的插入 O(n)
    • 节点的删除 O(n)
    • 节点的获取 O(n)
    • 静态链表的长度 O(1)
    • 静态链表的容量 O(1)
    • 静态链表的清空 O(n)
    • 静态链表的销毁 O(1)
  • CircleList(循环链表)
    • 循环链表的创建 O(1)
    • 节点的插入 O(n)
    • 节点的删除 O(n)
    • 节点的获取 O(n)
    • 循环链表的长度 O(1)
    • 循环链表的清空 O(n)
    • 循环链表的销毁 O(n)
    • 删除指定元素 O(n)
    • 获取当前游标指向 O(1)
    • 游标前进 O(1)
    • 游标复位 O(1)
  • DLinkList(双向链表)
    • 双向链表的创建 O(1)
    • 节点的插入 O(n)
    • 节点的删除 O(n)
    • 节点的获取 O(n)
    • 双向链表的长度 O(1)
    • 双向链表的清空 O(n)
    • 双向链表的销毁 O(n)
    • 删除指定元素 O(n)
    • 获取当前游标指向 O(1)
    • 游标前进 O(1)
    • 游标后退 O(1)
    • 游标复位 O(1)
  • SeqStack (顺序存储结构栈)
    • 创建栈 O(1)
    • 销毁栈 O(1)
    • 清空栈 O(1)
    • 进栈 O(1)
    • 出栈 O(1)
    • 获取栈顶元素 O(1)
    • 获取栈大小 O(1)
    • 获取栈容量 O(1)
  • LinkStack (链式存储结构栈)
    • 创建栈 O(1)
    • 销毁栈 O(n)
    • 清空栈 O(n)
    • 进栈 O(1)
    • 出栈 O(1)
    • 获取栈顶元素 O(1)
    • 获取栈大小 O(1)
  • RecursiveAlgorithm (递归问题求解)
    • 字符串倒序
    • 字符串长度
    • 汉诺塔问题
    • 全排列问题
    • N皇后问题
    • 走迷宫问题
  • SeqQueue (顺序存储结构队列)
    • 创建队列 O(1)
    • 销毁队列 O(1)
    • 清空队列 O(1)
    • 进队列 O(1)
    • 出队列 O(1)
    • 获取队头元素 O(1)
    • 获取队列长度 O(1)
    • 获取队列容量 O(1)
  • LinkQueue (链式存储结构队列)
    • 创建队列 O(1)
    • 销毁队列 O(n)
    • 清空队列 O(n)
    • 进队列 O(1)
    • 出队列 O(1)
    • 获取队头元素 O(1)
    • 获取队列长度 O(1)
  • SQueue (两个栈实现队列)
    • 创建队列 O(1)
    • 销毁队列 O(n)
    • 清空队列 O(n)
    • 进队列 O(1)
    • 出队列 O(1)
    • 获取队头元素 O(1)
    • 获取队列长度 O(1)
    • 获取当前队列最大值 O(1)
  • SStack (两个队列实现栈)
    • 创建栈 O(1)
    • 销毁栈 O(n)
    • 清空栈 O(n)
    • 进栈 O(1)
    • 出栈 O(n)
    • 获取栈顶元素 O(n)
    • 获取栈大小 O(1)
  • SortArgorithm (排序算法)
    • 选择排序 O(n^2)
    • 插入排序 O(n^2)
    • 冒泡排序 O(n^2)
    • 希尔排序 O(nLogn)
    • 快速排序 O(nLogn)
    • 归并排序 O(nLogn)
  • GTree(通用树结构)
    • 树的创建 O(1)
    • 树的清空 O(n)
    • 树的销毁 O(n)
    • 节点的插入 O(n)
    • 节点的删除 O(n)
    • 节点的获取 O(n)
    • 节点的个数 O(1)
    • 获取根节点 O(1)
    • 树的高度 O(n)
    • 树的度 O(n)
    • 打印树 O(n)
    • 节点的路径 O(n)
  • BTree(二叉树结构)
    • 树的创建 O(1)
    • 树的清空 O(1)
    • 树的销毁 O(1)
    • 节点的插入 O(n)
    • 节点的删除 O(n)
    • 节点的获取 O(n)
    • 节点的个数 O(1)
    • 获取根节点 O(1)
    • 树的高度 O(n)
    • 树的度 O(n)
    • 打印树 O(n)
    • 前序遍历二叉树 O(n)
    • 中序遍历二叉树 O(n)
    • 后序遍历二叉树 O(n)
    • 层次遍历二叉树 O(n)
    • 线索化二叉树 O(n)
    • 比较两颗二叉树是否相等 O(n)
    • 单度节点的删除 O(n)
  • MGraph(邻接矩阵法图结构)
    • 图的创建 O(n)
    • 图的清空 O(n^2)
    • 图的销毁 O(1)
    • 加入边 O(1)
    • 删除边 O(1)
    • 获取边的权值 O(1)
    • 获取边的度数 O(n)
    • 获取节点数 O(1)
    • 获取图的边数 O(n^2)
    • 打印图 O(n^2)
    • 图的深度优先遍历(DFS) O(n)
    • 图的广度优先遍历(BFS) O(n)
  • LGraph(邻接链表法图结构)
    • 图的创建 O(n)
    • 图的清空 O(n^2)
    • 图的销毁 O(n)
    • 加入边 O(1)
    • 删除边 O(n^2)
    • 获取边的权值 O(n^2)
    • 获取边的度数 O(n^3)
    • 获取节点数 O(1)
    • 获取图的边数 O(n)
    • 打印图 O(n^3)
    • 图的深度优先遍历(DFS) O(n)
    • 图的广度优先遍历(BFS) O(n)
  • Prim(最小连通网)
  • Search(查找算法)
    • 静态查找 O(n)
    • 动态查找 O(n)
    • 二分查找 O(logn)
    • 插值查找 O(logn)
  • BSTree(二叉排序树结构)
    • 树的创建 O(1)
    • 树的清空 O(1)
    • 树的销毁 O(1)
    • 节点的插入 O(logn)
    • 节点的删除 O(logn)
    • 节点的获取 O(logn)
    • 节点的个数 O(1)
    • 获取根节点 O(1)
    • 树的高度 O(n)
    • 树的度 O(n)
    • 打印树 O(n)
  • Hash(哈希表结构)
    • 创建哈希 O(1)
    • 销毁哈希 O(n)
    • 清空哈希 O(n)
    • 加入键值对 O(logn)
    • 删除键值对 O(logn)
    • 根据键获取值 O(logn)
    • 获取键值对数目 O(1)

Keep in touch.

QQ553620248 or WeChat17727536673

About

My C language DataStruct LIB

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published