Google KickStart Round G Problem A 给定N个整数,计算其中(x,y,z)三元组的数目,xyz满足以下条件 1 <= x < y < z <= N Ax = Ay …
分类:数据结构
BZOJ-1996: [Hnoi2010]chorus 合唱队(区间DP)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1996 区间DP,注意len=2的处理不要重复即可。 代码: #include <cstdio> #in…
LeetCode 10 : 正则表达式匹配
题目描述 Given an input string (s) and a pattern (p), implement regular expression matching with support for ̵…
蓄水池算法
今天在网上看题目时,发现一个十分有趣的算法,叫蓄水池算法(Reservoir Sampling),牵扯到一点概率论问题。 题目:给出一个数据流,这个数据流的长度很大或者未知。并且对该数据流中数据只能访问一次。请写出一个随…
背包、栈和队列
介绍 背包是一种不支持从中删除元素的集合类型,它的目的是帮助用例收集元素并迭代遍历所有收集到的元素,迭代的顺序不确定且与用例无关。 下压栈是一种基于后进先出(LIFO)策略的集合类型。当遍历下压栈中的元素时,从最后压入的…
一些字符串哈希算法
见代码: unsigned int hash_BPHash(unsigned char *str){ unsigned int hash = 0; while(*str){ hash = (hash << 7…
数据结构-树
树:是n(n>=0)个节点的有限集,n=0时称为空树。在任何一棵非空树中:1 有且仅有一个特定的称为根(root)的节点; 2 n>1时,其余节点可分为m(m>0)个互不相交的优先集,其中每一个集合又是…
BZOJ-2821: 作诗(Poetize)(分块+二分)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2821 我这道题借鉴了一下2741的做法,先分成sqrt(n)块,对于每块的最后一个点x,预处理出每个x到后面位置的…
王道数据结构 第三章 栈和队列 编程题1
栈部分 判断栈的操作序列是否合法(栈的初始状态和终止状态均为空)。若合法,返回true,反之返回false,操作序列存入一维数组中。I为入栈,O为出栈。 bool validate(const char *a) { in…
删除链表的倒数第N个节点
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2-&g…
iOS/OC:希尔排序的理解
希尔排序(Shell Sort),一听这名字就知道是一个叫希尔的外国人发明的排序。没错,他就是唐纳德 希尔(Donald Shell),一位美国的计算机科学家,他于1959年发明的希尔排序算法。 对于希尔排序,比较正式的…
PAT数据结构基础-线性结构练习
这个月计划把《数据结构与算法分析-C语言描述》重温一遍,恶补一下自己数据结构与算法方面的短板。这几天断断续续把最基本的线性结构一章看完,主要是讲了表、栈和队列三种数据结构的原理、实现以及应用。 表主要操作有Insert、…