queue.c功能函数:#include "queue.h"
static void CopyToNode(Item item,Node *pn)
{
pn->item = item;
}
static void CopyToItem(Node *pn, Item *pi)
{
*pi = pn->item;
}
/* 把队列初始化为空,就是设置尾指针为NULL并设置项数(items成员)为...
分类:
编程语言 时间:
2014-12-23 12:32:22
阅读次数:
220
尾指针 *real(head->next=dead)1初始化void ds_init( node **pNode){int item;node *temp,*target;printf("输入终点的值,输入0完成出初始化\n");while(1){ scanf("%d",&item); fflus....
分类:
其他好文 时间:
2014-12-03 18:30:57
阅读次数:
179
链式队列数据结构如下:
typedef struct qnode{
ElemType data;
struct qnode* next; //指向下一节点指针
}QNode;
typedef struct{
QNode* front; //队首指针
QNode* rear; //队尾指针
}ListQueue;
实现以下函数:
vo...
分类:
其他好文 时间:
2014-11-15 21:49:44
阅读次数:
415
顺序队列的数据结构如下:
typedef struct {
ElemType data[MaxSize];
int front,rear; //front队首指针,rear队尾指针
}SqQueue;
实现下列函数:
void InitQueue(SqQueue* &q); //初始化队列
void ClearQueue(SqQueue* ...
分类:
其他好文 时间:
2014-11-15 20:19:30
阅读次数:
234
队列是操作受限的线性表,只允许在队尾插入元素,在队头删除元素。对于链队列结构,为了便于插入元素,设立了队尾指针,这样插入元素的操作便与队列长度无关。...
分类:
其他好文 时间:
2014-11-10 15:33:54
阅读次数:
306
1.快速排序
快速排序是不稳定的排序算法,平均时间复杂度O(nlgn)。快速排序是利用了partition( )进行排序的。partition( )有两种实现形式,(1)利用两个指针一个头指针,一个尾指针,通过交换头尾指针所指的数进行排序; (2)一前一后两个指针同时从左往右进行遍历,如果前指针所遇到的数比主元小,则后指针右移一位,然后交换。Partition方法还可以用在很多地...
分类:
编程语言 时间:
2014-10-31 23:43:47
阅读次数:
380
用模运算可简化为:i=(i+1)%MAX_QUEUE_SIZE ;和时间有关的操作都与队列有关。队列的顺序存储结构FIFO设立一个队首指针front ,一个队尾指针rear ,分别指向队首和队尾元素。 ◆ 初始化:front=rear=0。 ◆ 入队:将新元素插入rear所指的位置,然后rear加1...
分类:
其他好文 时间:
2014-10-28 19:23:50
阅读次数:
239
http://acm.hdu.edu.cn/showproblem.php?pid=5073这题的关键是要把p点减重心位置 的 平方的那个式子展开,就可以O(n),开始ans初始化为1e18一直wa,改成1e19就A了最大的部分是连续的,头尾指针一起移动就可以#include #include #i...
分类:
其他好文 时间:
2014-10-26 16:56:26
阅读次数:
121
Given a linked list, determine if it has a cycle in it.Follow up:Can you solve it without using extra space?注意,链表循环并不是尾指针和头指针相同,可能是在中间某一段形成一个环路,所以不能只判...
分类:
其他好文 时间:
2014-10-21 22:56:24
阅读次数:
335
标准队列是一种先进先出的线性结构。
设想一个用数组实现的容量为2的队列,入队2次后出队1次,再入队一次。传统队列会认为rear已指向末尾,入队失败。而循环队列会将新元素放在arr[0]的位置上,允许rear
队空和队满时头尾指针均相等,因此通过元素个数判断更合理。
{CSDN:CODE:478002}...
分类:
其他好文 时间:
2014-09-30 18:14:19
阅读次数:
169