题目链接:uva 11270 - Tiling Dominoes
题目大意:用1?2木块将给出的n?m大小的矩阵填满的方法总数。
解题思路:插头dp的裸题,dp[i][s]表示第i块位置,并且该位置对应的行数的状态为s的时候的总情况数。0表示为竖放预留留的位置,1表示填上的位置,不管是竖放还是横放。并且第一位状态用滚动数组优化空间。
#include
#include
#incl...
分类:
其他好文 时间:
2014-05-23 07:39:17
阅读次数:
194
查找(二)
散列表
散列表是普通数组概念的推广。由于对普通数组可以直接寻址,使得能在O(1)时间内访问数组中的任意位置。在散列表中,不是直接把关键字作为数组的下标,而是根据关键字计算出相应的下标。
使用散列的查找算法分为两步。第一步是用散列函数将被查找的键转化为数组的一个索引。
我们需要面对两个或多个键都会散列到相同的索引值的情况。因此,第二步就是一个处理碰撞冲突的过程,...
分类:
其他好文 时间:
2014-05-22 13:27:19
阅读次数:
421
和startActivity()类似,startActivities也是界面跳转,但是传入的intent是一个数组,也就是说是多个。
假设我传入的是两个intent: I1和I2,则调用startActivities之后,直接到I2界面,按返回键,到I1界面。其中到I2的过程中,不会经过I1界面,也就是说,不过存在I1的生命周期之说。...
分类:
其他好文 时间:
2014-05-22 12:44:31
阅读次数:
235
查找(一)
我们使用符号表这个词来描述一张抽象的表格,我们会将信息(值)存储在其中,然后按照指定的键来搜索并获取这些信息。键和值的具体意义取决于不同的应用。
符号表中可能会保存很多键和很多信息,因此实现一张高效的符号表也是一项很有挑战性的任务。
我们会用三种经典的数据类型来实现高效的符号表:二叉查找数、红黑树、散列表。
二分查找
我们使用有序数组存...
分类:
其他好文 时间:
2014-05-22 10:33:13
阅读次数:
403
数组其实是一种变相的指针,数组名同时也是指针,eg:
CODE == &CODE[0];
数组的加法:
#include
#define SIZE 4
int main(void)
{
shortdates[SIZE];
short* pti;
shortindex;
doublebills[SIZE...
分类:
编程语言 时间:
2014-05-22 08:48:53
阅读次数:
276
---------------------- IOS开发、Android培训、期待与您交流!
----------------------
一、OC数组
OC数组是一个类,它也分不可变数组NSArray和可变数组NSMutableArray。
1?不可变数组的创建
// 创建一个不可变数组,元素为一个OC字符串对象 @"小桥"
NSArray *arra...
分类:
其他好文 时间:
2014-05-22 07:30:56
阅读次数:
311
与上篇思想一样,或者说是替换数字的另一种版本吧,题目如下:
有两个已经排好的数组A1和A2,A1的末尾有足够的空间来容纳A2,我们将A2数组插入到A1中,继续保持已经排序;
这样看来就和替换空格相似了,如果我们在A1数组从头到尾复制数字,这样导致A1数组后面的数一直不断往后移动,复杂度一样是O(n2),所以,我们来举一反三:...
分类:
其他好文 时间:
2014-05-22 06:14:10
阅读次数:
241
今天可爱的Mayuyu会带领大家来学习一个东西,那就是异或最大,Mayuyu的问题描述如下。
题目:给定一个数组a[],再给出m个询问,每个询问一个数x,在数组a[]中找出一个数y,使得x与y的异或值最大。
分析:最直观的思路就是对于每一个询问,直接暴力在数组a[]中比较,找最大的,但是这样做的时间复杂度会很大。
我们有一个很好的解法,那就是字典树,假设所有的数字范围均...
分类:
其他好文 时间:
2014-05-20 16:02:01
阅读次数:
253
---------------------- IOS开发、Android培训、期待与您交流!
----------------------
一、NSNumber
前几篇笔记中,小桥复习了Foundatio框架中的几个类,这三个是OC学习的尾声了。 小桥已经复习过OC数组类NSArray,也说过它只能存放OC的对象,对于基本的数据类型确无能为力,但是实际编程中经常要把基本的数...
分类:
其他好文 时间:
2014-05-20 14:24:25
阅读次数:
253