
数据结构
文章平均质量分 80
NiuBenn
这个作者很懒,什么都没留下…
展开
-
对于动态顺序表的创建以及相关简单操作
首先我们要定义顺序表typedef struct SeqList{ DataType* _a; size_t _size; // 有效数据个数 size_t _capacity; // 容量 }SeqList;其次我们要了解的是对顺序表的相关操作void SeqPrint(SeqList* pSeq);//打印顺序表void SeqInit(SeqList* pSeq);//初始化顺...原创 2018-03-17 21:28:07 · 849 阅读 · 0 评论 -
数据结构单链表的实现以及相关操作
首先在SListNode.h里面对我们的单链表结点结构体定义,以及相关操作函数进行声明单链表部分主要相关操作包括单链表的数据的头插、尾插、头删、尾删、SListNode.h:#pragma oncetypedef int DataType;typedef struct SListNode{ struct SListNode* _next; DataType _data;}SListN...原创 2018-04-02 18:28:47 · 262 阅读 · 0 评论 -
单链表实现约瑟夫环(JosephCircle) 问题
首先先了解一下什么是约瑟夫环问题Josephus有过的故事:39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓。于是决定了自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀。然后下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从,Josephus要他的朋友先假装遵从,他将朋友与自己安排在第16...原创 2018-04-02 19:17:38 · 19368 阅读 · 3 评论 -
数据结构之 队列(Queue)的实现及简单操作
在生活中我们经常会遇到排队的事情,比如说排队买东西,大家依次站一个队,队头的人要比后面的人先买到东西,先到先得,然后买完东西就会离开这个队而我们平时为了解决在比如说打客服电话,排队叫号之类的应用问题时我们就应用了 队列 这种数据结构,实现先到先得,先入先出的排队功能队列(Queue):是只允许在一端进行插入操作,在另一端进行删除操作的线性表。队列也是一种特殊的线性表,是一种先进先出的线性表。允许插...原创 2018-04-05 13:41:13 · 4553 阅读 · 0 评论 -
数据结构 之 栈(Stack)的实现及简单操作
栈是限定仅在表尾进行插入和删除操作的线性表,由于栈只能在尾进行插入和删除,所以这里我们选用顺序表来实现栈更方便快捷一点对于栈我们要做的有栈的初始化,入栈,出栈,查看栈顶元素,查看栈内元素个数,清空栈,打印栈在Stack.h:中对栈相关接口函数进行声明以及对栈的结构体进行定义Stack.h:#pragma once#define NUM 50//栈的大小typedef int DataType;...原创 2018-04-03 13:24:51 · 1238 阅读 · 0 评论 -
数据结构 之 带头循环双链表
在数据结构中我们经常会接触到链表,链表也分好多种,带头结点和不带头结点、循环和不循环、单向链表和双向链表而在众多不同结构的链表中 带头循环双链表可以说是一种最优的链表结构相比于单链表只能访问当前结点的后续结点的局限性,双链表既可以访问前面结点也可以访问后面结点其次循环的情况下相比于非循环的链表在访问尾节点时,非循环的链表余姚遍历整个链表才能访问尾节点,而循环链表由于它的循环特性,不用遍历链表,头结...原创 2018-04-05 15:01:02 · 713 阅读 · 0 评论 -
数据结构 栈和队列面试题 实现一个栈
实现一个栈,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值)的时间 复杂度为O(1) 实现一个栈的出栈入栈其实很简单,可是要求Min(返回最小值)的时间复杂度为O(1),就需要换个思路来思考时间复杂度为O(1),我们可以通过双栈来实现,或者说一个栈里有两个数组存放数据,一个array来存放入栈的元素,一个min来存放当前栈内最小值,入栈的时候往array和min里面同时入数据,出栈时...原创 2018-04-21 15:22:42 · 475 阅读 · 0 评论 -
数据结构 栈和队列 用两个栈实现一个队列
众所周知栈和队列是两个中不同的数据结构,栈是先入后出,队列是先入先出,虽然栈和队列有不同之处,但是他们之间也有相互的联系两个栈实现一个队列了解一下首先我们需要两个栈S1,S2,通过两个栈之间元素的交换从而达到先入先出的目的所以我们对队列Queue定义为typedef struct Queue{ Stack*原创 2018-04-21 16:53:34 · 380 阅读 · 0 评论