当前位置: 首页 > news >正文

【数据结构】算法代码

线性表

顺序表

#define MaxSize 500

typedef struct{

        ElemType *elem;  //ElemType elem[MaxSize];

        int lenth;

}SqList;

初始化

bool InitList(SqList &L){

        L.elem=new ElemType[MaxSize];

        //L.elem=(ElemType *)malloc(sizeof(ElemType)*InitSize);

        if(!L.elem)        return false;

                L.length=0;

                return triue;

}

取值

bool GetElem(SqList L,int i,ElemType &e){

        if(i<1 || i>L.length)        return false;

        e=L.elem[i-1];

        return true;

}

int LocateElem(SqList L,ElemType e){

        for(int i=0;i<=L.length-1;i++)

                if(L.elem[i]==e)        return i+1;

        return 0;

}

插入(1\leq i \leq n+1)

bool ListInsert(SqList &L,int i,ElemType e){

        if(i<1 || i>L.length+1)        return false;

        if(i.length==MaxSize)        return false;

        for(int j=L.length-1;j>=i-1;j--)

                L.elem[i-1]=e;

                L.Length++;

                return true;

}

删除(1\leq i\leq n)

bool ListDelete(SqList &L,int i)

        if(i<1 || i>L.length)        return false;

        for(int j=i;j<L.length-1;j++)

                L.elem[j-1]=L.elem[j];

        L.length--;

        return true;

}

单链表

双链表

静态链表

顺序栈

链栈

队列(循环队列)

并查集

存储

二叉树

  • 满二叉树
  • 完全二叉树
  • 线索二叉树

满二叉树

完全二叉树

线索二叉树

存储

查找

AVL

红黑树

B树

排序

  • 直接插入排序
  • 折半插入排序
  • 希尔排序
  • 冒泡排序
  • 快速排序
  • 简单选择排序
  • 堆排序
  • 归并排序
  • 基数排序
  • 外部排序

直接插入排序

折半插入排序

希尔排序

冒泡排序

快速排序

简单选择排序

堆排序

归并排序

基数排序

外部排序

应用

并查集的应用

哈夫曼

最小生成树

最短路径

拓扑序列

关键路径

遍历

树的遍历

图的遍历

DFS

BFS

http://www.lryc.cn/news/605740.html

相关文章:

  • 渗透RCE
  • TS 常用类型与语法
  • Cesium 快速入门(六)实体类型介绍
  • Jmeter 性能测试常用图表、服务器资源监控
  • C语言指针(三):数组传参本质、冒泡排序与二级指针详解
  • FISCO BCOS Gin调用WeBASE-Front接口发请求
  • [硬件电路-111]:滤波的分类:模拟滤波与数字滤波; 无源滤波与有源滤波;低通、带通、带阻、高通滤波;时域滤波与频域滤波;低价滤波与高阶滤波。
  • 操作系统数据格式相关(AI回答)
  • 无人船 | 图解基于LQR控制的路径跟踪算法(以欠驱动无人艇Otter为例)
  • 学习笔记《区块链技术与应用》第4天 比特币脚本语言
  • Docker部署Seata
  • Linux核心转储(Core Dump)原理、配置与调试实践
  • 前端-移动Web-day2
  • 野生动物巡查系统(H题)--2025 年全国大学生电子设计竞赛试题
  • ENSP防火墙部署
  • 快速理解RTOS中的pendsv中断和systick中断
  • Java Stream进阶:map是“一对一”,flatMap是“一对多”
  • H.266 vs H.265/AV1/H.264:从工程落地看下一代视频系统的技术演进
  • 前端核心技术Node.js(五)——Mongodb、Mongoose和接口
  • Web3:在 VSCode 中基于 Foundry 快速构建 Solidity 智能合约本地开发环境
  • 硬核技术协同:x86 生态、机密计算与云原生等技术如何为产业数字化转型筑底赋能
  • 云原生环境 DDoS 防护:容器化架构下的流量管控与弹性应对
  • 对git 熟悉时,常用操作
  • Java学习第九十一部分——OkHttp
  • MongoDB用户认证authSource
  • 微服务架构技巧篇——接口类设计技巧
  • 智能交通顶刊TITS论文分享|跨区域自适应车辆轨迹预测:TRACER框架攻克域偏移难题!
  • PageOffice实现文档并发控制
  • 2025年人形机器人动捕技术研讨会将在本周四召开
  • JVM面试通关指南:内存区域、类加载器、双亲委派与GC算法全解析