我了个草,这个题明明bfs不知道谁挂了个dfs+剪枝的标签。。。
从起点bfs一步一步搜,碰到X判断是不是终点,如果是终点就结束,如果为‘.',那么把该位置改成X,坐标入队。
#include
#include
#include
#include
#include
using namespace std;
const int maxn = 505;
const int dir[4][2] = ...
分类:
其他好文 时间:
2015-05-15 12:06:11
阅读次数:
115
今天总结循环队列。
什么是队列?
队列跟栈差不多,也是一种操作受限的线性表,只允许在线性表的一端进行插入操作,在另一端进行删除操作。插入的一端称为队尾,删除的一端称为队头,插入操作称为入队,而删除操作称作出出队,不含任何数据元素的队称为空队。队列也有两种实现方式,一种就是顺序存储,用数组实现,另一种是采用链表形式。今天总结顺序存储的循环队列。
什么是循环队列?
循环队列就是,当...
分类:
编程语言 时间:
2015-05-15 09:12:19
阅读次数:
277
起因最近打算实现异步任务,回想起当年看celery的场景,重新整理下celery的机制1. 任务入队列假定一个函数定义如下def add(a, b, c=0):
print a + b + c任务被序列化后,以字符串的形式入队列{"body": "gAJ9cQEoVQdleHBpcmVzcQJOVQN1dGNxA4lVBGFyZ3NxBF1xBShLD0sUZVUFY2hvcmRxBk5V...
分类:
其他好文 时间:
2015-05-14 14:19:07
阅读次数:
130
假设有这样一个拥有3个操作的队列:1.EnQueue(v):将v加入队列2.DeQueue:使队列中的队首元素删除并返回元素3.MaxElement:返回队列中的最大元素请设计一种数据结构和算法,让MaxElement操作的时间复杂度尽可能低研究这个问题之前,先研究两个子问题:1、设计一个包含min...
分类:
其他好文 时间:
2015-05-12 13:25:30
阅读次数:
226
顺序队所尊崇的结点如图
所实现的功能如下:
bool IsFull(Queue *Q);//判满
bool IsEmpty(Queue *Q);//判空
void InitQueue(Queue *Q);//初始化
bool EnQueue(Queue *Q, ElemType x);//入队
bool DeQueue(Queue *Q, ElemType *v);//出队并返回值...
分类:
其他好文 时间:
2015-05-12 00:07:06
阅读次数:
140
循环队列的表示和实现定义
用一组地址连续的存储单元依次存放从队头到队尾的元素。还需要附设两个整型变量:front指示队头元素的位置,rear指示队尾元素的下一个位置
算法const int MAXSIZE=128;
typedef struct Squeue{
Elemtype elem[MAXSIZE];
int front;
int rear;
}Squeue;
队列的基本形态...
分类:
其他好文 时间:
2015-05-10 17:20:36
阅读次数:
125
队列的定义
什么是队列呢? 限定在线性表的一端(表尾)进行插入
在线性表的另一端(表头)进行删除
在队列中允许插入的一端叫队尾(rear)
允许删除的一端叫队头(front)
所以:对尾插入 队头删除队列的特点 队列也是一种线性结构
对队列的操作按照“先进先出”的原则进行
取队头
读取非空队列中的队头元素
入队
向队列中插入一个新的元素,新插入的元...
分类:
其他好文 时间:
2015-05-10 15:44:39
阅读次数:
169
1.优先队列有两项基本操作:插入(insert)和删除最小项(deleteMin),后者的工作是找出、返回和删除优先队列中最小的元素。而insert操作则等价于enqueue(入队),deleteMin则等价于dequeue(出队)。补充:C++提供2个版本的deleteMin,一个删除最小项,另一个在删除最小项的同时在通过引用传递的对象中存储所删除的值。2.优先队列的类接口template <ty...
分类:
其他好文 时间:
2015-05-10 14:24:48
阅读次数:
215
关于循环队列循环队列就是像一个圈一样,可以一直不停的入队和出队,例如:队列已经满了,如果执行一次出队操作,队列头部就空出来了,这时候就可以把元素继续插入空出来的那里,头指针向后移第二个元素就变成的队列的头,上一个对头就变成了队尾下图中:此时队列已经满了,但是当把12出队后,head指针会指向第1个位置,这是再忘队列中插入元素的,tail就会指向0的位置,然后把元素插入到0的位置。
组成循环队列需要...
分类:
其他好文 时间:
2015-05-09 08:58:26
阅读次数:
182
简介
优先队列:指队列中的元素都被指派一个优先级,元素按优先级最大(最小)出队,存储堆的数组的第一个元素就是最大的(或最小的)。所以用堆作为优先队列的元素载体是合适的。
队列有两个基本操作:1.入队2.出队。
队列的特点是先进先出。通常都把队列比喻成排队买东西,大家都很守秩序,先排队的人就先买东西。但是优先队列有所不同,它不遵循先进先出的规则,而是根据队列中元素的优先权,优先权最大的先被取...
分类:
其他好文 时间:
2015-05-08 22:09:07
阅读次数:
143