![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
~
小渝同学
一人一晚一奇迹 尸体竟是我自己
展开
-
一篇教你学会几大常用排序算法(冒泡选择插入希尔快速堆归并计数桶基数)
文章目录排序算法:0.野路子排序1.冒泡排序2.选择排序3.插入排序:4.希尔排序:5.快速排序:6.堆排序:7.归并排序:8.计数排序:9.桶排序:10. 基数排序: 排序算法: 0.野路子排序 特点:简单易懂 时间复杂度:O(n^2) 解读:从第一个数开始,跟后面数比,一旦遇到数比这个数小则交换这两个数的值,内层循环结束后,则最小的值保证在第一个位置。然后从第二个位置继续… void sort(int* arr,int len) { for(int i=0;i<len-1;i++) { f原创 2020-11-23 22:58:05 · 183 阅读 · 0 评论 -
二叉树 创建 显示 深度 密度 镜像 平衡等等 (不断更新)
二叉树 二叉树的根(节点)定义与创建 #include <stdio.h> #include <stdlib.h> #include <stdbool.h> //节点结构体 typedef struct Node { char data; //数据域 struct Node* left; //左 struct Node* right; //右 }Node; //创建节点 Node* create_node(char data) { Node* nod原创 2020-11-17 21:12:26 · 182 阅读 · 0 评论 -
数据结构之队列
队列 队列:把一个表结构限制成有两个端口,一个端口只能进,另一个端口只能出,先进先出FIFO。 先进先出 功能 // 创建队列 QueueOrder* create_queue(int cal) // 销毁队列 void destroy_queue(QueueOrder* queue) // 队空 bool empty_queue(QueueOrder* queue) // 队满 bool full_queue(QueueOrder* queue) // 入队 bool push_queue(QueueOr原创 2020-11-10 20:50:08 · 50 阅读 · 0 评论 -
数据结构之顺序栈(StackOrder)与 链式栈(StackList)
栈表 功能被限制的表: 栈:把表结构限制为只有一个端口进出,元素先进后出FILO。 而栈内存正是使用了这种结构管理内存,所以才叫栈内存。 实现功能列表 // 创建栈 StackOrder* create_stack(int cal) // 销毁栈 void destroy_stack(StackOrder* stack) // 栈空 bool empty_stack(StackOrder* stack) // 栈满 bool full_stack(StackOrder* stack) // 入栈 bool原创 2020-11-10 20:38:46 · 229 阅读 · 0 评论 -
数据结构之顺序表(order)链表(list)
顺序表 功能列表 Order* create_order(int cal) // 创建顺序表 void destroy_order(Order* order)// 销毁顺序表 void clear_order(Order* order)// 清除表元素 bool insert_order(Order* order,int index,TYPE val)// 插入元素 bool delete_order(Order* order,int index)// 删除元素 bool add_order(Order原创 2020-11-10 20:02:22 · 649 阅读 · 0 评论