数据结构
文章平均质量分 79
CodePotato
今天是你余生中最年轻的一天
展开
-
数据结构之 队列(Queue)的实现 Java
队列 - 实现为了实现队列,我们可以使用动态数组和指向队列头部的索引。如上所述,队列应支持两种操作:入队和出队。入队会向队列追加一个新元素,而出队会删除第一个元素。 所以我们需要一个索引来指出起点。这是一个供你参考的实现:// "static void main" must be defined in a public class.class MyQueue { //...原创 2018-09-29 12:13:18 · 522 阅读 · 0 评论 -
数据结构与算法之 队列和广度优先搜索(BFS)
队列和 BFS 广度优先搜索(BFS)的一个常见应用是找出从根结点到目标结点的最短路径。在本文中,我们提供了一个示例来解释在 BFS 算法中是如何逐步应用队列的。洞悉 1. 结点的处理顺序是什么?在第一轮中,我们处理根结点。在第二轮中,我们处理根结点旁边的结点;在第三轮中,我们处理距根结点两步的结点;等等等等。与树的层序遍历类似,越是接近根结点的结点将越早地遍历。...原创 2018-09-29 12:18:25 · 907 阅读 · 0 评论 -
数据结构与算法之 栈(Stack)的Java实现
后入先出的数据结构在 LIFO 数据结构中,将首先处理添加到队列中的最新元素。与队列不同,栈是一个 LIFO 数据结构。通常,插入操作在栈中被称作入栈 push 。与队列类似,总是在堆栈的末尾添加一个新元素。但是,删除操作,退栈 pop ,将始终删除队列中相对于它的最后一个元素。 示例 - 栈1. 入栈:你可以单击下面的 Push 按钮查看如何将新元素 6 添加到栈中。...原创 2018-09-29 12:22:01 · 397 阅读 · 1 评论 -
数据结构之 链表(List)的C语言的实现
#include<stdio.h>#include<stdlib.h>#include<stdbool.h>typedef struct Node{ int data; struct Node * next;}NODE,*PNODE;//函数声明 PNODE Creat(int n){ //建表 int i=0; PNODE phea...原创 2018-09-29 12:25:06 · 2194 阅读 · 0 评论 -
数据结构之栈(Stack)的关于C语言的实现
C语言实现栈共有两种方法,一种是使用数组的包含最大Size的栈,另外一种是运用链表的方法实现关于数组方法实现的代码如下:#include<stdio.h>/** * Your MinStack struct will be instantiated and called as such: * struct MinStack* obj = minStackCreate(m...原创 2018-09-29 12:28:21 · 406 阅读 · 0 评论