数据结构编程函数题
以学习数据结构为主,不优先考虑代码算法的时间复杂度
坤上岸
这个作者很懒,什么都没留下…
展开
-
线性结构——有序数组的插入
6-25 有序数组的插入 (20 分)本题要求将任一给定元素插入从大到小排好序的数组中合适的位置,以保持结果依然有序。函数接口定义:bool Insert( List L, ElementType X );其中List结构定义如下:typedef int Position;typedef struct LNode *List;struct LNode { ElementType Data[MAXSIZE]; Position Last; /* 保存线性表中最后一个元素的位置原创 2021-11-25 22:30:05 · 591 阅读 · 0 评论 -
线性结构——双端队列
6-16 双端队列 (25 分)双端队列(deque,即double-ended queue的缩写)是一种具有队列和栈性质的数据结构,即可以(也只能)在线性表的两端进行插入和删除。若以顺序存储方式实现双端队列,请编写例程实现下列操作:Push(X,D):将元素X插入到双端队列D的头;Pop(D):删除双端队列D的头元素,并返回;Inject(X,D):将元素X插入到双端队列D的尾部;Eject(D):删除双端队列D的尾部元素,并返回。函数接口定义:bool Push( ElementType原创 2021-11-25 21:40:57 · 263 阅读 · 0 评论 -
线性结构——另类循环队列
6-15 另类循环队列 (20 分)如果用一个循环数组表示队列,并且只设队列头指针Front,不设尾指针Rear,而是另设Count记录队列中元素个数。请编写算法实现队列的入队和出队操作。函数接口定义:bool AddQ( Queue Q, ElementType X );ElementType DeleteQ( Queue Q );其中Queue结构定义如下:typedef int Position;typedef struct QNode *PtrToQNode;struct QNod原创 2021-11-25 19:51:44 · 153 阅读 · 0 评论 -
线性结构—— 递增的整数序列链表的插入
6-2 递增的整数序列链表的插入 (15 分)本题要求实现一个函数,在递增的整数序列链表(带头结点)中插入一个新整数,并保持该序列的有序性。函数接口定义:List Insert( List L, ElementType X );其中List结构定义如下:typedef struct Node *PtrToNode;struct Node { ElementType Data; /* 存储结点数据 */ PtrToNode Next; /* 指向下一个结点的指针 */};原创 2021-11-25 19:20:50 · 370 阅读 · 0 评论 -
线性结构——Removal for Linked-list(链表尾插与指定元素删除)
6-2 Removal for Linked-list (10 分)This a linked-list program that reads unknown amount of non-negative integers. -1 is used to indicates the end of the input process. Then the program reads another integer and find all apprearence of this integer in the p原创 2021-11-25 00:32:41 · 865 阅读 · 0 评论 -
线性结构应用——括号匹配
数据结构编程题一、线性表1.括号匹配一、线性表1.括号匹配检查一段C语言代码的小括号( )、 中括号 [ ] 和大括号{ } 是否匹配。输入格式:在一行中输入一段C语言代码,长度不超过1000个字符(行末以换行符结束)。输出格式:第一行输出左括号的数量和右括号的数量,中间以一个空格间隔。若括号是匹配的,在第二行打印YES,否则打印NO。输入样例1:for(int i=0; i<v; i++){ visited[i] = 0; for(int j=0; j<v; j++) sc原创 2021-11-24 00:44:08 · 202 阅读 · 0 评论 -
线性结构——Deque(双端队列双向链表实现)
A “deque” is a data structure consisting of a list of items, on which the following operations are possible:Push(X,D): Insert item X on the front end of deque D.Pop(D): Remove the front item from deque D and return it.Inject(X,D): Insert item X on the r原创 2021-11-24 09:46:46 · 451 阅读 · 0 评论 -
数据结构编程题集锦(更新ing)
数据结构编程题一、线性结构(一)线性表(二)栈与队列(三)广义表与多重链表二、数组与字符串三、树(一)二叉树(二)一、线性结构(一)线性表(二)栈与队列1.括号匹配 检查一段C语言代码的小括号( )、 中括号 [ ] 和大括号{ } 是否匹配。2.双端队列(双向链表版)双端队列(顺序表版本)(三)广义表与多重链表二、数组与字符串三、树(一)二叉树(二)...原创 2021-11-24 16:50:36 · 1272 阅读 · 0 评论