数据结构
文章平均质量分 51
yeranc137
这个作者很懒,什么都没留下…
展开
-
c语言数据结构:循环队列解决约瑟夫问题
目录1.函数代码:2.主函数以及其他结构体定义:1.函数代码:void JosephCircle(SqQueue&Q,int n,int m){ ElemType e; int i=1; int Count = n;//用来记录剩下的人数 while(Count != 1) { i = 1;//i用来控制是第几个人报数 while(i != m)//当i的值不等于m的值时 { Q.f原创 2021-04-23 16:48:22 · 2534 阅读 · 0 评论 -
数据结构作业:括号匹配算法(【{}】)利用压栈弹栈原理
括号匹配算法该算法的原理:算法的内容:与该算法配套的压栈和弹栈算法以及结构体定义:该算法的原理:判断是否出现 {【(,出现则压入栈中,如果遇到}】),则弹出上一个栈与其对比。算法的内容:void validstr(char*str,SqStack*&s){ int flag=1; int i; for(i=0; *(str+i)!='\0'; i++) { if((*(str+i) == '{' )|| (*(str+i) =='[') || (*(str+i) =='原创 2021-04-18 10:06:36 · 179 阅读 · 0 评论 -
链式队列及基本操作by解学武(转载)
本文来自解学武的教程免费章节什么是链式队列链式队列,简称"链队列",即使用链表实现的队列存储结构。链式队列的实现思想同顺序队列类似,只需创建两个指针(命名为 top 和 rear)分别指向链表中队列的队头元素和队尾元素,如图 1 所示:图 1 所示为链式队列的初始状态,此时队列中没有存储任何数据元素,因此 top 和 rear 指针都同时指向头节点。在创建链式队列时,强烈建议初学者创建一个带有头节点的链表,这样实现链式队列会更简单。//链表中的节点结构typedef struct Q转载 2021-02-26 17:00:57 · 375 阅读 · 0 评论 -
c语言描述:数据结构【四.栈与队列】(顺序队列)
笔记目录前言结构体使用初始化入队出队遍历前言这些代码均为自己在郝斌老师教学的基础下自己的理解与补充,以及一些详细的解释结构体使用#include<stdio.h>typedef struct Queue{ int *pBase; int front; int rear;}QUEUE;初始化void init (QUEUE *pQ)//初始化{ pQ->pBase=(int*)malloc(sizeof(int)*6); pQ->fron原创 2021-02-26 16:32:34 · 91 阅读 · 0 评论 -
数据结构:顺序栈基本操作(入栈和出栈)C语言详解(转载)by解学武
本文为解学武教程的免费章节什么是顺序栈顺序栈,即用顺序表实现栈存储结构。通过前面的学习我们知道,使用栈存储结构操作数据元素必须遵守 “先进后出” 的原则,本节就“如何使用顺序表模拟栈以及实现对栈中数据的基本操作(出栈和入栈)” 给大家做详细介绍。如果你仔细观察顺序表(底层实现是数组)和栈结构就会发现,它们存储数据的方式高度相似,只不过栈对数据的存取过程有特殊的限制,而顺序表没有。例如,我们先使用顺序表(a 数组)存储 {1,2,3,4},存储状态如图 1 所示:同样,使用栈存储结构存储转载 2021-02-26 10:07:55 · 7271 阅读 · 0 评论 -
c语言描述:数据结构【四.栈与队列】(链栈的使用)
笔记目录前言结构体使用栈的初始化压栈操作遍历操作判断栈是否为空出栈操作清除数据操作前言这些代码均为自己在郝斌老师教学的基础下自己的理解与补充,以及一些详细的解释结构体使用#include<stdio.h>#include<malloc.h>#include<stdlib.h>typedef struct Node{ int data; struct Node* pNext;}node,*pnode;typedef struct Stack原创 2021-02-25 18:15:02 · 126 阅读 · 0 评论 -
数据结构:栈与队列的知识点by解学武
文章来自解学武学习网站的免费章节目录什么是栈进栈和出栈栈的应用什么是队列队列的出队和入队队列的实现什么是栈同顺序表和链表一样,栈也是用来存储逻辑关系为 “一对一” 数据的线性存储结构,如图 1 所示。从图 1 我们看到,栈存储结构与之前所学的线性存储结构有所差异,这缘于栈对数据 “存” 和 “取” 的过程有特殊的要求:栈只能从表的一端存取数据,另一端是封闭的,如图 1 所示;在栈中,无论是存数据还是取数据,都必须遵循"先进后出"的原则,即最先进栈的元素最后出栈。拿图 1 的栈来说,从图中数据的转载 2021-02-25 15:21:49 · 535 阅读 · 0 评论 -
c语言描述:数据结构【三.线性表】(双链表的使用)
笔记目录结构体使用创建双链表遍历双链表删除某个元素结构体使用#include<stdio.h>#include<malloc.h># include <stdlib.h>typedef struct doublenode{ int data; struct doublenode*prior; struct doublenode*next;}Doublenode,*pDoublenode;//相当于struct doublenode,st原创 2021-02-25 12:11:04 · 92 阅读 · 0 评论 -
c语言描述:数据结构【三.线性表】(链表的使用)
笔记目录前言结构体使用创造链表遍历链表数据判断是否为空以及测量长度插入数据删除数据前言这些代码均为自己在郝斌老师教学的基础下自己的理解与补充,以及一些详细的解释结构体使用#include<stdio.h>#include<malloc.h># include <stdlib.h>typedef struct Node{ int data; struct Node *pnext}node,*pnode;/*相当于将node等价于struct原创 2021-02-24 17:33:42 · 102 阅读 · 0 评论 -
c语言描述:数据结构【三.线性表】(连续存储数组算法)
笔记目录前言利用结构体的方式初始化函数init()判断是否满和空full()empty()遍历函数show()追加函数append()插入函数insert()删除函数delete()倒序函数inversion()排序函数sort()前言这些代码均为自己在郝斌老师教学的基础下自己的理解与补充,重新打过,以及一些详细的解释利用结构体的方式#include<stdio.h>#include<malloc.h>//包含了malloc函数# include <stdlib.h原创 2021-02-23 16:14:39 · 116 阅读 · 0 评论 -
c语言描述:数据结构【三.线性表】
连续存储【数组】前言本知识总结来自于郝斌老师的数据结构大纲, 故投转载。 本人为大一计算机专业学生,自学过程中想借博客记录知识点,同时方便以后复习。1、什么叫做数组元素类型相同,大小相等(数组传参,只要传进去首地址和长度就行)2、数组的优缺点:优点:存取速度快 缺点:事先必须知道数组的长度插入删除元素很慢空间通常是有限制的需要大块连续的内存块插入删除元素的效率很低离散存储【链表】定义:n个节点离散分配彼此通过指针相连每个节点只有一个前驱节点,每个节点只转载 2021-02-22 16:37:10 · 121 阅读 · 0 评论