//1.队列顺序结构的定义
#define MAXQSIZE 100
typedef struct
{
QElemType base[MAXQSIZE];//静态数组
int front;//队列头指针
int rear;//队列尾指针
}SqQueue;
//解决队列的假溢出方法
//1.将循序列队臆造为一个环状空间。尾指针指向头指针
//2.在对满的情况下,rear指针和front...
分类:
其他好文 时间:
2015-01-31 19:27:25
阅读次数:
319
KMP是众多字符串问题的基础理解next数组尤为重要next又称前缀数组 是 它所处位置的前一个位置的元素 与 该链 链首开始 几个元素相匹配(即相同)举个实例来说明:next对应的是该位置的前一个元素, 即next[i]对应a[i-1]因为-1头指针的存在 next均对应前一个 很重要next可以...
分类:
编程语言 时间:
2015-01-27 12:34:44
阅读次数:
180
题目:
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together
the nodes of the first two lists.
思路:
设置两个头指针,一个指针不动,用来返回最后头结点,一个指针用来组织节点顺序,遍...
分类:
其他好文 时间:
2015-01-25 18:18:40
阅读次数:
203
题目大意:给定一条道路上的n个稻田,要求建一个粮仓,并且选定一些稻田进行运输,这些稻田到粮仓的距离之和不能超过B,求最多能选择多少个稻田
维护一个队列,头指针从前到后扫一遍
如果发现尾指针到头指针这段稻田的中位数上建一个粮仓时距离之和超过了B,就调整尾指针
对距离维护一个前缀和 每次取中位数之后可以O(1)计算距离和
#include
#include
#include
#inclu...
分类:
其他好文 时间:
2015-01-22 09:29:00
阅读次数:
132
头指针: 头指针是指链表指向第一个结点的指针,若链表有头结点,则是指向头结点的指针。 头指针具有标识作用,所以常用头指针冠以链表的名字。 无论链表是否为空,头指针均不为空。 头指针是链表的必要元素。头结点: 它是为了操作的统一和方便设立的,放在第一个元素的结点之前,其数据域一般无意义(但也...
分类:
其他好文 时间:
2015-01-21 22:01:27
阅读次数:
369
用一个头链表实现栈,头指针永远指向栈顶元素#include #include #include typedef int ElemenType ;typedef struct node{ ElemenType data; struct node *next;}Linkstack;Lin...
分类:
其他好文 时间:
2015-01-15 23:37:18
阅读次数:
177
链式队列是基于单链表的一种存储表示, 其形状如下图所示: (队列的队头指针指向单链表的第一个结点, 队尾指针指向单链表的最后一个结点, 注意没有无用的空[头/尾]节点) 用单链表表示的链式队列特别适合于数据元素变动比较大的情况, 而且不存在队列满而产生溢出的情况; 链式队列结点构造:[这次我们将节点构造成了类LinkQueue的嵌套类]struct ChainNode
{
C...
分类:
其他好文 时间:
2015-01-10 21:06:42
阅读次数:
223
<?php
/**
*第二种——非循环顺序队列的实现方法
*此方法,对第一种实现方法进行了优化,出队时不再移动元素
*仅仅改变头指针的位置即可
*
*此方法的优缺点:
*优点:插入和删除的时间复杂度都已是O(1),效率比较高
*缺点:元素删除后,前面的空间就无法再进行利用,造成空..
分类:
Web程序 时间:
2015-01-09 01:43:49
阅读次数:
187
<?php
/**
*第一种——非循环顺序队列的实现方法
*队列的头元素在为数组的下标为0的元素
*这种方法的优缺点:
*优点:头元素始终在下标为0的第一个元素,因此不需要设置头指针
*缺点:元素出队是会移动大量元素,时间复杂度为O(n),效率比较低
*
*/
classSqQueue{
private$Sq..
分类:
Web程序 时间:
2015-01-09 01:43:21
阅读次数:
142
双指针思想,尾指针不断往后扫,当扫到有一个窗口包含了所有T的字符,然后再收缩头指针,直到不能再收缩为止。最后记录所有可能的情况中窗口最小的...