![](https://img-blog.csdnimg.cn/20200704213220632.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构
数据结构算法
不吃水果的太空人
这个作者很懒,什么都没留下…
展开
-
数据结构 直接插入排序 冒泡排序 c++
直接插入排序 冒泡排序 要求: 对两种排序算法进行编程实现 #include<iostream> using namespace std; typedef int Status; typedef int Status; typedef int KeyType; typedef int InfoType; typedef struct { KeyType key; InfoType otherinfo; }RedType; typedef struct { RedType r[21];原创 2020-07-03 22:14:17 · 200 阅读 · 0 评论 -
数据结构 二叉排序树 c++
二叉排序树的操作 要求: 1.若查找成功,返回元素在有序数组中的位置和查找次数; 2.若查找失败,返回出错标志和查找次数。 #include <iostream> using namespace std; typedef int KeyType; typedef int InfoType; typedef struct { KeyType key; InfoType otherinfo; }ElemType; typedef struct BSTNode{ ElemType data;原创 2020-07-03 22:11:55 · 386 阅读 · 0 评论 -
数据结构 折半查找 c++
折半查找的实现 要求: 1.若查找成功,返回元素在有序数组中的位置和查找次数; 2.若查找失败,返回出错标志和查找次数。 //low应从0开始,因为设置的数组下标从0开始 //虽然mid不变,但是当key为首元素时,mid为1也就是第二元素,导致找不到第一个元素。 #include <iostream> using namespace std; typedef int Status; typedef int KeyType; typedef int InfoType; typedef struc原创 2020-07-03 22:09:35 · 1096 阅读 · 0 评论 -
数据结构 图的操作 c++
图的操作 要求: (1)采用邻接矩阵/邻接表建立图; (2)采用深度优先/广度优先搜索方式遍历图; (3)编程实现Dijkstra最短路径算法。 #include <iostream> #include <string> #define MaxInt 32767 #define MVNum 100 typedef int Status; typedef char VertexType; typedef int ArcType; using namespace std; typede原创 2020-07-03 22:04:10 · 355 阅读 · 0 评论 -
数据结构 哈夫曼编码 c++
哈夫曼编码 要求: 给定报文中26个字母a-z及空格的出现频率{64, 13, 22, 32, 103, 21, 15, 47, 57, 1, 5, 32, 20, 57, 63, 15, 1, 48, 51, 80, 23, 8, 18, 1, 16, 1, 168},构建哈夫曼树并为这27个字符编制哈夫曼编码,并输出。模拟发送端,从键盘输入字符串,以%为结束标记,在屏幕上输出输入串的编码;模拟接收端,从键盘上输入0-1哈夫曼编码串,翻译出对应的原文。 64 13 22 32 103 21 15 47 5原创 2020-07-03 22:01:02 · 2504 阅读 · 2 评论 -
数据结构 二叉树的操作 先序 中序 层序遍历 链表 c++
二叉树的基本操作: 1.采用二叉链表结构建立二叉树 2.编程实现二叉树的先序、中序、后序和层序遍历; 3.编程实现非递归中序遍历 4.编程实现:求二叉树的高度和叶子结点个数; #include <iostream> #include <bits/stdc++.h> #define OK 1 #define ERROR 0 #define MAXSIZE 100 typedef int Status; typedef char TElemType; typedef char **Huf原创 2020-07-03 21:53:50 · 580 阅读 · 0 评论 -
数据结构 栈和队列的操作 c++
栈和队列的操作 要求 (1)编程实现栈的以下基本操作:建栈,取栈顶元素,入栈,出栈。 (2)编程实现队列的以下基本操作:建队列,取队头元素,入队,出队。 #include <iostream> #define OK 1 #define ERROR 0 #define MAXSIZE 100 typedef int SElemType; typedef int QElemType; typedef int Status; using namespace std; //栈 typedef stru原创 2020-07-03 21:50:15 · 288 阅读 · 0 评论 -
数据结构 单链表的操作 c++
单链表的操作 要求: 1.编程实现单链表的以下基本操作:建立单链表,查找单链表,插入单链表,删除单链表。 2.采用单链表结构编程实现:两个有序单链表的归并运算。 #include <iostream> #include <stdio.h> #include <stdlib.h> typedef int ElemType; typedef int Status; #define OK 1 #define ERROR 0 using namespace std; //定义单链原创 2020-07-03 21:47:55 · 462 阅读 · 0 评论 -
数据结构 顺序表的操作 c++
顺序表的操作 要求: 1.编程实现顺序表的以下基本操作:建立顺序表,修改顺序表,插入顺序表,删除顺序表。 2.采用顺序表结构编程实现:两个集合的运算:交集/并集/差集。 操作实例: 1.插入数据(位置, 数据),要测插入位置不合法的情况(0,1)、(2,1),正确插入4个数据(1,2)、(1,1)、(3,3); 2.显示顺序表中的数据,屏幕输出1, 2, 3; 3.判空,屏幕输出顺便表非空; 4. 顺便表长度,屏幕输出3; 5.获取指定位置元素,要测指定位置在【1,3】范围之外的情况和之内的情况; 6.定位原创 2020-07-03 21:44:28 · 538 阅读 · 0 评论