![](https://img-blog.csdnimg.cn/2020020710594190.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
大学所学的数据结构知识
Sugar_ya
生活不止要把握现在,还有诗和远方。
展开
-
数据结构--线性表多项式合并
将两个多次项合并成一个多次项Linklist Add(Linklist La,Linklist Lb){Linklist pa,pb,pc,lc;pa=La->next;pb=Lb->next;Lc=pc=La;while(pa&&pb){if(pa->expexp)//exp为指数{pc->next=pa;pc=pa;pa=pa-...原创 2020-02-19 10:18:43 · 354 阅读 · 0 评论 -
数据结构--单链表
数据结构–单链表InitList(LinkList &L) 参数:单链表L 功能:初始化 时间复杂度 O(1)ListLength(LinkList L) 参数:单链表L 功能:获得单链表长度 时间复杂度O(n)ListInsert(LinkList &L,int i,ElemType e) 参数:单链表L,位置i,元素e 功能:位置i后插 时间复杂度O(n)[加入了查找]...原创 2020-02-07 12:58:45 · 543 阅读 · 0 评论 -
数据结构--顺序表
数据结构–顺序表CreatList(SqList &L,int n) 参数:顺序表L,顺序表长度n 功能:创建长度为的顺序表 时间复杂度:O(n)InitList(SqList &L) 参数:顺序表L 功能:初始化 时间复杂度:O(1)InsertList(SqList &L,int i,ElemType e) 参数:顺序表L,位置i,元素e 功能:位置i处插入元素...原创 2020-02-07 12:57:25 · 431 阅读 · 0 评论 -
数据结构--二叉树基本操作函数(先、中、后、层次遍历,含全部代码)
数据结构–二叉树基本操作函数(先、中、后、层次遍历,含全部代码)Project: 二叉树(BiTree)Date: 2020/02/01Author: WX_timiInitTree(BiTree &T) 参数T,二叉树根节点 作用:初始化二叉树,先序递归创建PreOrder(BiTree T) 参数T,二叉树根节点 作用:先序遍历二叉树,递归方式InOrder...原创 2020-02-07 12:53:53 · 631 阅读 · 0 评论 -
数据结构--二叉查找(排序)树的插入,创建,查找,删除(含全部代码)
数据结构–二叉查找(排序)树的插入,创建,查找,删除(含全部代码)Project: 二叉查找树(又称二叉排序树,简称BST)Date: 2020/02/01Author: WX_timiBST_Insert(BSTree &T, TElemType data) 参数T,二叉查找树根节点 作用:插入数据data,保证中序非严格递增(即可重复)PreOrder(BST...原创 2020-02-07 12:51:00 · 345 阅读 · 0 评论 -
数据结构--哈夫曼树-创建,带权路径长度
数据结构–哈夫曼树-创建,带权路径长度Project:哈夫曼树 构造 编码 译码 计算wplDate: 2020/02/04Author: WX_timivoid CreateHT()创建哈夫曼树void Code() 哈夫曼树编码void Encode() 哈夫曼树解码void WPL() 计算带权路径长度#include<cstdio>#include...原创 2020-02-07 12:24:23 · 920 阅读 · 0 评论 -
数据结构--最短路径-Dijkstra算法
数据结构–最短路径-Dijkstra算法Project: 图-最短路径-Dijkstra算法Date: 2020/01/01Author: WX_timi基本操作函数:InitGraph(Graph &G) 初始化函数 参数:图G 作用:初始化图的顶点表,邻接矩阵等InsertNode(Graph &G,VexType v) 插入点函数 参数:图G,顶点v...原创 2020-02-07 12:17:49 · 579 阅读 · 0 评论 -
数据结构--用递归的方法判断一个树是否是二叉排序树
数据结构–用递归的方法判断一个树是否是二叉排序树【代码】:#include<iostream>#include<malloc.h>#define OVERFLOW -2using namespace std;typedef struct BiTNode{ int data; int number; struct BiTNode *p...原创 2020-02-07 12:12:22 · 910 阅读 · 0 评论 -
数据结构--邻接表或邻接矩阵做广度优先遍历
数据结构–邻接表或邻接矩阵做广度优先遍历1、邻接表的遍历【代码】:#include <iostream>#include <stdio.h>#include <stdlib.h>using namespace std;#define MaxVertexNum 50 //定义最大顶点数typedef struct node ...原创 2020-02-07 12:10:45 · 2076 阅读 · 0 评论 -
数据结构--哈夫曼树权值相等问题
数据结构–哈夫曼树权值相等问题在哈夫曼树排序中,当遇见有两个权值相等的情况下,怎样选择排序,以及先后选择排序后打的区别;1、我们可以统一确定左子节点和右子节点的大小关系,例如所有构造都必须使得左子节点的权值不小于右子节点,免得给出相同的原始节点序列,所构造的哈夫曼树结构不同2、节点按照权值排序的规则,例如两个原始节点或者一个原始节点和一个新建节点,具有相同的权值时,需要统一序列中的前后顺序...原创 2020-02-07 12:05:28 · 15866 阅读 · 0 评论 -
数据结构--汉诺塔问题
数据结构–汉诺塔问题我列举了两种解法—递归和非递归1、这是递归解法#include<iostream>using namespace std;int j = 1;void move(char a, char c){ cout << j++ << " " << a << "--->" << c <&...原创 2020-02-07 12:03:37 · 1705 阅读 · 0 评论 -
数据结构--多项式合并
数据结构–线性表将两个多次项合并成一个多次项Linklist Add(Linklist La,Linklist Lb){ Linklist pa,pb,pc,lc; pa=La->next; pb=Lb->next; Lc=pc=La; while(pa&&pb) { if(pa->exp<...原创 2020-02-07 11:59:43 · 1123 阅读 · 0 评论 -
数据结构--顺序表函数
数据结构–顺序表函数数据结构线性表–顺序表常用函数1、 创建有n个元素构成的线性表:Status CreatAscend(LinkList &L,int n){ int j; LinkList p,q,s; if(n<=0) return ERROR; InitList(L); cout<<"请输入元素个数...原创 2020-02-07 11:54:55 · 1196 阅读 · 0 评论 -
数据结构--时间复杂度算法
数据结构–时间复杂度算法分别写出时间复杂度为o(1)、o(n)、o(n²)、o(log n)的算法:1、O (1)#include <iostream>using namespace std;int main(){ int x; x++; cout<<x; return 0;}2、O(n)#include <...原创 2020-02-07 11:50:09 · 299 阅读 · 0 评论 -
数据结构--简易图书管理模拟系统
数据结构–简易图书管理模拟系统【实验目的】插入、查找和删除等数据操作在实际应用中非常普遍,通过设计和实现一个简易的图书管理系统,进一步提高学生对插入、查找和删除等操作的理解和应用能力。帮助学生理解和掌握线性表和平衡二叉树等数据结构的基本操作和实现方法,加强学生综合应用数据结构知识解决实际问题的水平和能力。【实验内容】1、问题描述:一个简易图书管理的基本业务活动包括:对新购入一种书的采编入库...原创 2020-02-07 11:45:50 · 4373 阅读 · 2 评论 -
数据结构--图及其应用--图的遍历
数据结构–图及其应用–图的遍历【实验目的】使学生深入了解图结构的特点,掌握创建图的各种存储结构的方法;同时深刻理解图的dfs和bfs遍历过程。【实验内容及要求】1、问题描述:很多涉及图上操作的算法都是以图的遍历操作为基础的。请以邻接表为存储结构,实现连通无向图的深度优先和广度优先遍历两个遍历算法。以用户指定的结点为起点,分别输出每种遍历下的结点访问序列和相应生成树的边集。2、测试数据:教...原创 2020-02-07 11:42:11 · 1271 阅读 · 0 评论 -
数据结构--树及其应用--哈夫曼编码
数据结构–树及其应用–哈夫曼编码【实验目的】树和二叉树是一类应用极为广泛的数据结构。通过本次实验使学生不仅了解树和二叉树的结构特性及其基本操作的实现过程,同时掌握他们在实际问题背景下的应用。【实验内容】1.问题描述:利用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于...原创 2020-02-07 11:40:28 · 1521 阅读 · 0 评论 -
数据结构--树及其应用-- 二叉树的遍历
数据结构–树及其应用-- 二叉树的遍历【实验目的】使学生深入了解并掌握非线性数据结构的特点,掌握创建二叉树二叉链表存储结构的方法;同时深刻理解二叉树的各遍历过程。【实验内容及要求】1、问题描述:很多涉及二叉树的操作的算法都是以二叉树的遍历操作为基础的。编写程序,对一棵给定的二叉树进行先、中、后三种次序的遍历。2、基本要求:以二叉链表为存储结构,实现二叉树的先、中、后三种次序的递归和非递归...原创 2020-02-07 11:35:46 · 1036 阅读 · 0 评论 -
数据结构--栈和队列及应用--迷宫问题
数据结构–栈和队列及应用–迷宫问题【实验目的】使学生深入了解栈和队列的特性,以便在实际问题背景下灵活运用它们,同时还将巩固对这两种结构的构造方法的掌握及基本操作的实现。【实验内容】1、问题描述:以一个m×n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得到没有通路的结论。2、基本要求:首先实现一个以链表作存储结构的栈类...原创 2020-02-07 11:33:32 · 2607 阅读 · 0 评论 -
数据结构--栈和队列及应用--表达式求值
数据结构–栈和队列及应用–表达式求值【实验目的】使学生深入了解栈和队列的特性,以便在实际问题背景下灵活运用它们,同时还将巩固对这两个结构的构造方法的掌握及基本操作的实现。【实验内容及要求】1、问题描述:实现表达式求值。算法输入为表达式字符串,输出为该表达式的计算结果。要求表达式字符串支持正整数类型的操作数,支持+,-,,/四种算数运算符,支持若干函数运算符。比如,exp(x)表示 ,log...原创 2020-02-07 11:31:03 · 2633 阅读 · 1 评论 -
数据结构--线性链表及其应用--约瑟夫环
数据结构–线性链表及其应用–约瑟夫环【实验目的】帮助学生熟练掌握线性表的基本操作在顺序和链式两种存储结构上的实现,其中以各种链表的操作和应用作为重点内容。【实验内容及要求】1、问题描述:约瑟夫问题的一种描述为,编号为1,2,3,……n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。...原创 2020-02-07 11:25:51 · 914 阅读 · 0 评论 -
数据结构-- 顺序表及其应用--顺序表的基本操作及有序表的合并
数据结构–顺序表及其应用——顺序表的基本操作及有序表的合并【实验目的】帮助学生熟练掌握线性表的顺序存储结构(顺序表)的基本操作及其简单应用,实现两个有序表的合并操作。【实验内容及要求】1.实现顺序表的各种基本操作,包括创建顺序表、插入和删除指定序号的元素、读取表元、获取最大和最小值元素、查找元素、表元素的排序、表元素逆置、顺序表的输入和输出等等;2.实现两个有序顺序表的合并。问题描述:...原创 2020-02-07 11:21:16 · 2568 阅读 · 0 评论