五一三天假除了背单词,也抽空复习了下UML,毕竟还有一两周要半期考试了……(哪里来的半期考试啊syllabus明明里提都没有提啊T_T)今天先来看——领域模型。首先领域模型长这样(后面还有九个图啊千万不要搞混了)那么为什么要有领域模型呢,不是前面已经有用例图了嘛。书上在后面的内容稍微提到了这点,表示...
分类:
其他好文 时间:
2014-05-10 08:46:57
阅读次数:
360
单词计数是最简单也是最能体现MapReduce思想的程序之一,可以称为MapReduce版"Hello
World",该程序的完整代码可以在Hadoop安装包的"src/examples"目录下找到。单词计数主要完成功能是:统计一系列文本文件中每个单词出现的次数,如下图所示。现在我们以"hadoop...
分类:
其他好文 时间:
2014-05-10 01:54:48
阅读次数:
445
什么叫Trie树?Trie树即字典树。又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希...
分类:
其他好文 时间:
2014-05-09 12:43:02
阅读次数:
437
一般而言,实现"读入用户输入的字符串",程序中自然不能对用户输入的长度有所限定。这在C++中很容易实现,而在C中确没那么容易。这一疑问,我在刚学C++的时候也在脑中闪现过;不过很快将它抛在脑后了。直到最近,我在百度知道上讨论一个单词统计问题(链接)时,才重新想起。于是,翻出gcc
4.6.1的代码,...
分类:
其他好文 时间:
2014-05-07 10:28:11
阅读次数:
546
1.在使用变量时应该遵循一下良好的编程习惯。
定义有意义的变量名,有助于程序自成文档,可以减少注释。
用作变量名的标识符,第一个字母应该小写。大写字母开头和字母全部大写的标识符有专门的含义。
变量名使用多个单词可使程序具有更好的可读性,这种情况下,需要将第一个单词外的每个单词首字母大写或在每个单词之间加入下划线_以区分不同的单词。
2.只有内建数据类型和函数对象类型适用于传值调用。对...
分类:
编程语言 时间:
2014-05-07 07:32:25
阅读次数:
310
接触Trie树是在选拔赛时候遇到一题目,TLE无数次依然无解,赛后发现字符串统计有一利器名曰“字典树”,后来花了一段时间去写Trie.
什么叫Trie树?
Trie树即字典树。
又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时...
分类:
其他好文 时间:
2014-05-07 07:05:09
阅读次数:
351
这道题思路不难,本质就是BFS嘛,从一个单词开始,他的下一层是所有可以一步变到,且从来没变到过得那些string。问题是怎样确定这些可以变到的string呢?有两个条件,一,只能通过上一层的string变化一个数字得到,二,变化之后单词必须在字典中。注意是变化一个字母得到,而不是编辑距离是1,要么就复杂了,情况多了好多好多。
我最开始的思路是建个map,保存所有从开始单词能变化到得单词及这些单词...
分类:
其他好文 时间:
2014-05-07 06:18:46
阅读次数:
276
这种题一看,立马就会想到递归,但直接递归的代价太大了,当字典里的单词长度很小,而单词长度很长时,肯定会超时的。再仔细想一下,是不是每次递归验证都是有必要的呢?如果从i位置开始已经被验证为不行了,那么其他递归分支走到这个位置的时候就不用走了,因为肯定是死胡同。想到了打表,把不行的位置记录下来,速度显著提高。
下面说一点实现的事情,记录一个位置行不行,用map最简单直接,查找速度也快。每次选择步长的...
分类:
其他好文 时间:
2014-05-06 19:19:47
阅读次数:
253
Interface
Java里用interface关键字,引入一种没有具体实现的类型。
Declaring Interfaces
interface一般以大写字母开头,able单词结束,如下例子:
interface Drawable
{
int RED = 1; // For simplicity, integer constants are used. These constants ...
分类:
移动开发 时间:
2014-05-06 15:09:43
阅读次数:
671
关键字:被Java语句赋予特殊含义的单词,所有关键字都是小写标识符:程序中自定义的一些名称,由字母、数字、_ 以及 $
符号组成,数字不能开头,区分大小写(命名规范)注释:// 单行注释/* 多行注释 *//** 文档注释
*/常量:整数常量、小数常量、布尔型常量、字符常量、字符串常量、null变量...
分类:
编程语言 时间:
2014-05-06 13:03:28
阅读次数:
437