【数据结构】
.
Giyn
个人博客:https://giyn.work
联系邮箱:[email protected]
展开
-
2021 广工 Anyview 数据结构第 5 章
/**********【题目】试编写如下定义的递归函数的递归算法: g(m,n) = 0 当m=0,n>=0 g(m,n) = g(m-1,2n)+n 当m>0,n>=0**********/int G(int m, int n) /* 如果 m<0 或 n<0 则返回 -1 */{ if (m < 0 || n < 0) return -1; else if (m == 0 &&原创 2021-01-16 16:38:43 · 1268 阅读 · 0 评论 -
2021 广工 Anyview 数据结构第 4 章
/**********【题目】已知某哈希表的装载因子小于1,哈希函数H(key)为关键字(标识符)的第一个字母在字母表中的序号,处理冲突的方法为线性探测开放定址法。试编写一个按第一个字母的顺序输出哈希表中所有关键字的算法。哈希表的类型HashTable定义如下:#define SUCCESS 1#define UNSUCCESS 0#define DUPLICATE -1typedef char StrKeyType[4];typedef struct { StrKeyTy原创 2021-01-16 16:37:04 · 907 阅读 · 0 评论 -
2021 广工 Anyview 数据结构第 3 章
/**********【题目】试以顺序表L的L.rcd[L.length+1]作为监视哨,改写教材3.2节中给出的升序直接插入排序算法。顺序表的类型RcdSqList定义如下:typedef struct { KeyType key; ... } RcdType;typedef struct { RcdType rcd[MAXSIZE+1]; // rcd[0]闲置 int length;} RcdSqList;**********/void InsertSort原创 2021-01-16 16:36:34 · 442 阅读 · 0 评论 -
2021 广工 Anyview 数据结构第 2 章
/**********【题目】试写一算法,实现顺序栈的判空操作StackEmpty_Sq(SqStack S)。顺序栈的类型定义为:typedef struct { ElemType *elem; // 存储空间的基址 int top; // 栈顶元素的下一个位置,简称栈顶位标 int size; // 当前分配的存储容量 int increment; // 扩容时,增加的存储容量} SqStack; // 顺序栈***********/原创 2021-01-16 16:34:26 · 1937 阅读 · 1 评论 -
2021 广工 Anyview 数据结构第 1 章
/**********【题目】试写一算法,如果三个整数a,b和c的值不是依次非递增的,则通过交换,令其为非递增。***********/void Descend(int &a, int &b, int &c)/* 通过交换,令 a >= b >= c */{ if (a < b) swap(a, b); if (a < c) swap(a, c); if (b < c) swap(b, c);}/********原创 2021-01-16 16:29:15 · 1285 阅读 · 0 评论 -
2021 广工 Anyview 数据结构第 8 章
/**********【题目】编写算法,创建有向图的邻接数组存储结构。图的邻接数组存储结构的类型定义如下:#define UNVISITED 0#define VISITED 1 #define MAX_VEX_NUM 4#define INFINITY MAXINT // 计算机允许的整数最大值,即∞typedef int VRType;typedef char InfoType;typedef char VexType;typedef enum {DG,DN,UDG,UD原创 2021-01-16 16:26:20 · 797 阅读 · 0 评论 -
2021 广工 Anyview 数据结构第 7 章
/**********【题目】试编写算法,对一棵以孩子兄弟链表表示的树统计叶子的个数。孩子兄弟链表类型定义:typedef struct CSTNode { TElemType data; struct CSTNode *firstChild, *nextSibling;} CSTNode, *CSTree;**********/int Leave(CSTree T) /* 统计树T的叶子数 */{ if (!T) return 0; int res =原创 2021-01-16 16:24:25 · 1175 阅读 · 0 评论 -
2021 广工 Anyview 数据结构第 6 章
/**********【题目】若两棵二叉树T1和T2皆为空,或者皆不空且T1的左、右子树和T2的左、右子树分别相似,则称二叉树T1和T2相似。试编写算法,判别给定两棵二叉树是否相似。二叉链表类型定义:typedef struct BiTNode { TElemType data; struct BiTNode *lchild, *rchild;} BiTNode, *BiTree;**********/Status Similar(BiTree T1, BiTree T2)/原创 2021-01-11 13:18:29 · 3352 阅读 · 0 评论 -
【数据结构】—— 链栈ADT
抽象数据类型(Abstract Data Type,ADT)是计算机科学中具有类似行为的特定类别的数据结构的数学模型;或者具有类似语义的一种或多种程序设计语言的数据类型。抽象数据类型是间接定义的,通过其上的可执行的操作以及这些操作的效果的数学约束(与可能的代价)。——维基百科接口头文件LinkStack.h:#ifndef STACK_H_INCLUDED#define STACK_H_...原创 2020-04-20 12:40:14 · 383 阅读 · 1 评论 -
【数据结构】—— 顺序栈ADT
抽象数据类型(Abstract Data Type,ADT)是计算机科学中具有类似行为的特定类别的数据结构的数学模型;或者具有类似语义的一种或多种程序设计语言的数据类型。抽象数据类型是间接定义的,通过其上的可执行的操作以及这些操作的效果的数学约束(与可能的代价)。——维基百科接口头文件SqStack.h:#ifndef STACK_H_INCLUDED#define STACK_H_IN...原创 2020-04-19 12:05:41 · 543 阅读 · 1 评论 -
【数据结构】—— 双向链表ADT
抽象数据类型(Abstract Data Type,ADT)是计算机科学中具有类似行为的特定类别的数据结构的数学模型;或者具有类似语义的一种或多种程序设计语言的数据类型。抽象数据类型是间接定义的,通过其上的可执行的操作以及这些操作的效果的数学约束(与可能的代价)。——维基百科接口头文件DuLinkedList.h: /***********************************...原创 2020-04-18 09:40:12 · 577 阅读 · 1 评论 -
【数据结构】—— 单向链表ADT
抽象数据类型(Abstract Data Type,ADT)是计算机科学中具有类似行为的特定类别的数据结构的数学模型;或者具有类似语义的一种或多种程序设计语言的数据类型。抽象数据类型是间接定义的,通过其上的可执行的操作以及这些操作的效果的数学约束(与可能的代价)。——维基百科接口头文件LinkedList.h: /*************************************...原创 2020-04-17 09:10:40 · 1014 阅读 · 1 评论