摘要: 最近在学习GEF开发,使用的是GEF-whole-upload这个教程。由于教程当时所使用的版本与本人使用的版本有一些差异,中间出现了不少问题,现在将解决方案分享给大家。本人使用的Eclipse版本是3.7Indigo,gef是3.7.1 问题1.添加布局管理器XYLayout之后Label仍旧无法显示原因:XYLayout是采用坐标定位,没有指定坐标则无法显示Label解决方案1:将XYLayout改为FlowLayout解决方案2:继续按照教程往下进行加上约束效果: 问题2:在plugin.xml中设置了contributorClass后仍然无法显示工具栏原因:最新版的Eclipse R. 阅读全文
posted @ 2013-07-28 22:04 坚固66 阅读(291) 评论(0) 推荐(0)
摘要: d(i,j,k)表示左上角坐标为(i,j),k为正方形边长d(i,j,k)=1,如果d(i+1,j+1,k-2)=0,且上下两个外围的相等且回文,左右两个外围的相等且回文;否则d(i,j,k)=0d(i,j,0)=1d(i,j,1)=1#include #include int a[310][310];bool d[310][310][310];int check(int x,int y,int l){ for(int i=y;in)break; for(int j=1;jm)break; if(d[i+1][j+1][... 阅读全文
posted @ 2013-07-28 22:02 坚固66 阅读(154) 评论(0) 推荐(0)
摘要: 你可能偶尔需要编写退化类,目的只是为了集中实例域:// Degenerate classes like this should not be public!class Point { public double x; public double y;} 由于这种类的数据域是可以直接访问的,所以他们不能提供“封装”带来的好处。如果不改变API,就不能改变其数据表示法,不能强加任何约束,当域被访问时不能采取任何辅助行为。强硬派的面向对象程序员会非常厌恶这种类,认为这种类应该被包含private域和public访问方法(getter)的类替代。对于可变类,还应该包含setter。// Enc... 阅读全文
posted @ 2013-07-28 22:00 坚固66 阅读(163) 评论(0) 推荐(0)
摘要: 1、参数化类型的构造函数比较啰嗦 new HashMap>() 如果你调用参数化类的构造函数,那么很不幸,你必须要指定类型参数,即便上下文中已明确了类型参数。这通常要求你连续两次提供类型参数: Map> m = new HashMap>(); 而 假设HashMap提供了如下静态工厂: public static HashMap newInstance(){ return new HashMap(); } 然后你就可以讲上文冗长的声明替换为如下这种简洁的形式: Map> m = HashMap.newInstance(); ——com.... 阅读全文
posted @ 2013-07-28 21:57 坚固66 阅读(187) 评论(0) 推荐(0)
摘要: 编程习惯 1、用工厂方法替代构造函数Boolean.valueOf() 通过一个boolean简单类型,构造Boolean对象引用。优点:无需每次被调用时都创建一个新对象。同时使得类可以严格控制在哪个时刻有哪些实例存在 >>实例受控的类 public static Boolean valueOf(boolean b){ return b ? Boolean.TRUE : Boolean.FALSE; } 静态工厂方法Boolean.valueOf(String)几乎总是比构造函数Boolean(String)更可取。构造函数每次被调用时都会创建一个新对... 阅读全文
posted @ 2013-07-28 21:55 坚固66 阅读(239) 评论(0) 推荐(0)
摘要: 如何开展软件架构之概念架构到目前为止,我们已经完成了需求的分析过程,总结来说,主要的步聚是一)需求结构化,二)分析约束影响三)重点关注质量需求。那么接下来的阶段则是系统的概念架构了,这也许是大家最感兴趣的话题,前面提到系统的多层架构,各层之间相互隔离,下层提供服务而不知道上层应用,上层也只通过接口与下层交互,每一层的修改均不会影响其它层的逻辑,看上去有多华丽就有多华丽!但是真正开始系统架构时,却有无从下手无力感,为啥?因为你注意到软件的概念架构最主要的任务就是将系统按照某作规则划分成各种子系统,确定各子系统之间的协作,为下一阶段的细化设计奠定基础。系统划分的规则主要有三类:1:按逻辑分割2:按 阅读全文
posted @ 2013-07-28 21:54 坚固66 阅读(169) 评论(0) 推荐(0)
摘要: 两个题目都是用同一个模板,询问最长的连续未覆盖的区间 。lazy代表是否有人,msum代表区间内最大的连续长度,lsum是从左结点往右的连续长度,rsum是从右结点往左的连续长度。 区间合并很恶心啊,各种左左右右左右左右........ #include #include #include #include # define MAX 211111# define ll(x) x > 1)) tree[x].lsum += tree[rr(x)].lsum; if(tree[x].rsum == (p >> 1)) tree[x].rsum += tree[ll(x)].rsu 阅读全文
posted @ 2013-07-28 21:52 坚固66 阅读(133) 评论(0) 推荐(0)
摘要: 题目大意:给一棵树,求树上两点之间距离为K的点对数目。方程含义:dp(i,j)表示从已经遍历过的点到当前点i,路径长度为 j 的路径条数。因此,对于当前点,每当遍历了其中一个儿子节点的时候,首先统计当前情况下的结果,然后要更新dp(i, j)初始条件dp(i,0)= 1 #include #include #include using namespace std;#define N 50005vector g[N];int dp[N][505], n, k, ans;void dfs(int now, int fa) { for (int i=1; i<=k; i++) dp[now][ 阅读全文
posted @ 2013-07-28 21:49 坚固66 阅读(121) 评论(0) 推荐(0)
摘要: BroadcastReceiver基础总结BroadcastReceiver是Android四大组件之一,主要负责接收系统或其他程序发出的广播,在开发中,通常用做事件驱动的起源,比如开机就要开启一个程序,有网络就要开始下载资源,安装或卸载包了,就要跟新UI等等。以下就对这个组件总结我自己的理解:BroadcastReceiver的生命周期 BroadcastReceiver的生命周期很短,当系统或其他程序发出广播的时候,Android系统的包管理对象就会检查所有已安装的包中的配置文件有没有匹配的action,如果有,并且可以接收,那么就调用这个BroadcastReceiver,获取Broad 阅读全文
posted @ 2013-07-28 21:48 坚固66 阅读(215) 评论(0) 推荐(0)
摘要: 之前一共实现了6种比较常见的排序算法,分别是:选择排序,插入排序,冒泡排序,归并排序,快速排序,堆排序效率:衡量一个算法的效率包括空间和时间,有时候还要考虑稳定性。 前3种排序的方法效率较低,实现也比较简单,适合规模比较小的排序,个人认为适合排序总量在10000以下的随机数组。后3种排序的方法效率较高,实现稍微复杂一点,但也还好,适合规模较大的排序。 时间方面,前3种排序的复杂度都是O(N^2),后3种排序的复杂度都是O(N*LogN),即呈指数级减少(因为基本思路都是递归的方式分治)。当然了,这是平均情况。空间方面,即是否需要额外的空间,只有归并排序需要一个数组长度相同的空间来存储排序的结果 阅读全文
posted @ 2013-07-28 21:46 坚固66 阅读(184) 评论(0) 推荐(0)
摘要: query deleted datarows: select * from 表名 as of timestamp to_timestamp('删除时间点','yyyy-mm-dd hh24:mi:ss') //Needs Auth [flash any table] data table flashback: alter table 表名 enable row movement; //then flashback table 表名 to timestamp to_timestamp(删除时间点','yyyy-mm-dd hh24:mi:ss 阅读全文
posted @ 2013-07-28 21:44 坚固66 阅读(213) 评论(0) 推荐(0)
摘要: DSP中的CMD文件是链接命令文件(Linker Command File),以.cmd为后缀。 在分析cmd文件之前,必需先了解 (1)DSP具体芯片的内存映射(Memory Map) (2)知道点链接的知识,知道C程序中段的概念 (3)知道RAM,Flash等存储模块的区别 ====================================================================== 1. coff目标文件 ====================================================================== c... 阅读全文
posted @ 2013-07-28 21:42 坚固66 阅读(553) 评论(0) 推荐(0)
摘要: 素数环时间限制: 1000ms | 内存限制: 65535KB难度: 2描述有一个整数n,把从1到n的数字无重复的排列成环,且使每相邻两个数(包括首尾)的和都为素数,称为素数环。为了简便起见,我们规定每个素数环都从1开始。例如,下图就是6的一个素数环。输入有多组测试数据,每组输入一个n(0 map=new HashMap(); static boolean okk=true; public static void main(String[] args) { Scanner input=new Scanner(System.in); F(map); int e=1; while(true... 阅读全文
posted @ 2013-07-28 21:40 坚固66 阅读(203) 评论(0) 推荐(0)
摘要: 交集/差集/合集 select * from tb_a intersect minus union all select * from tb_b 条件分支 decode() 例如:搜索条件没有手机就查座机 默认查手机 SELECT * FROM AND DECODE(SEND_MOBILE,NULL,TELNUM,SEND_MOBILE) LIKE '110' 行号输出 row_number() OVER(ORDER BY null) 或者 rownum伪列 聚合输出 SELECT LISTAGG(STUNAME,'+') WITHIN GROUP (ORDER 阅读全文
posted @ 2013-07-28 21:38 坚固66 阅读(150) 评论(0) 推荐(0)
摘要: 《Cocoa编程开发者手册》基本信息作者: (美)奇斯纳尔(Chisnall,D.) 译者: 霍炬出版社:电子工业出版社ISBN:9787121122392上架时间:2013-7-22出版日期:2013 年7月开本:16开页码:804版次:1-1 所属分类:计算机 > 软件与程序设计 > 综合 > 高级程序语言设计 更多关于 》》》《 Cocoa编程开发者手册》 内容简介 计算机书籍 《cocoa编程开发者手册》是关于mac os x上cocoa api的指南,涵盖了从用户界面到网络编程各个方面的特性。本书共七个部分,详细叙述了核心的框架,以及其他许多用来构建丰... 阅读全文
posted @ 2013-07-28 21:36 坚固66 阅读(217) 评论(0) 推荐(0)
摘要: 基本功能实现:物体通过鼠标左键上下移动,中间键缩放、右键旋转,30秒没操作,物体自动旋转 实例代码:using UnityEngine;using System.Collections;public class Script_07_11 : MonoBehaviour { public Transform target; private int MouseWheelSensitivity = 50; private int MouseZoomMin = 20; private int MouseZoomMax = 112; private float normalDistance = 500. 阅读全文
posted @ 2013-07-28 21:34 坚固66 阅读(711) 评论(0) 推荐(0)
摘要: 创建一个通用视图抽取出我们代码中共性的东西是一个很好的编程习惯。 比如,像以下的两个Python函数:def say_hello(person_name): print 'Hello, %s' % person_namedef say_goodbye(person_name): print 'Goodbye, %s' % person_name我们可以把问候语提取出来变成一个参数:def greet(person_name, greeting): print '%s, %s' % (greeting, person_name)通过使用额外的URL 阅读全文
posted @ 2013-07-28 21:32 坚固66 阅读(165) 评论(0) 推荐(0)
摘要: 惭愧,现在才接触到ContentResolver的用法 这个类主要是Android用来实现应用程序之间数据共享的一个应用程序可以将自己的数据完全暴露出去,外界更本看不到,也不用看到这个应用程序暴露的数据是如何存储的,或者是使用数据库还是使用文件,还是通过网上获得,这些一切都不重要,重要的是外界可以通过这一套标准及统一的接口和这个程序里的数据打交道,例如:添加(insert)、删除(delete)、查询(query)、修改(update),当然需要一定的权限才可以。一个程序可以通过实现一个Content provider的抽象接口将自己的数据完全暴露出去,而且Content providers是 阅读全文
posted @ 2013-07-28 21:30 坚固66 阅读(283) 评论(0) 推荐(0)
摘要: Common SubsequenceTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 17390Accepted Submission(s): 7290 Problem Description A subsequence of a given sequence is the given sequence with some elements (possible none) left out. Given a sequence ... 阅读全文
posted @ 2013-07-28 21:28 坚固66 阅读(135) 评论(0) 推荐(0)
摘要: 1 摘要 本报告是在学习斯坦福大学机器学习课程前四节加上配套的讲义后的总结与认识。前四节主要讲述了回归问题,回归属于有监督学习中的一种方法。该方法的核心思想是从连续型统计数据中得到数学模型,然后将该数学模型用于预测或者分类。该方法处理的数据可以是多维的。 讲义最初介绍了一个基本问题,然后引出了线性回归的解决方法,然后针对误差问题做了概率解释。之后介绍了logistic回归。最后上升到理论层次,提出了一般回归。2 问题引入 假设有一个房屋销售的数据如下:面积(m^2)销售价钱(万元)12325015032087160102220…… 这个表类似于北京5环左右的房屋价钱,我们可以做出一个图,x轴是 阅读全文
posted @ 2013-07-28 21:27 坚固66 阅读(412) 评论(0) 推荐(0)
摘要: ESRI.ArcGIS.Geoprocessor.Geoprocessor geoprocessor = new Geoprocessor(); ESRI.ArcGIS.DataManagementTools.Dissolve d = new ESRI.ArcGIS.DataManagementTools.Dissolve();d.in_features = dissolveTable;d.out_feature_class = System.IO.Path.Combine(dataset.Workspace.PathName, OutputFeatureClas... 阅读全文
posted @ 2013-07-28 21:25 坚固66 阅读(724) 评论(0) 推荐(0)
摘要: 1 问题 模型选择问题:对于一个学习问题,可以有多种模型选择。比如要拟合一组样本点,可以使用线性回归,也可以用多项式回归。那么使用哪种模型好呢(能够在偏差和方差之间达到平衡最优)? 还有一类参数选择问题:如果我们想使用带权值的回归模型,那么怎么选择权重w公式里的参数?形式化定义:假设可选的模型集合是,比如我们想分类,那么SVM、logistic回归、神经网络等模型都包含在M中。2 交叉验证(Cross validation) 我们的第一个任务就是要从M中选择最好的模型。 假设训练集使用S来表示 如果我们想使用经验风险最小化来度量模型的好坏,那么我们可以这样来选择模型:1、 使用S来训练每一个, 阅读全文
posted @ 2013-07-28 21:23 坚固66 阅读(301) 评论(0) 推荐(0)
摘要: 对于AE开发时候,如果调用arctoolbox中的部分功能,权限是arcview或者arceditor是无法执行的,因为权限不够。arcgis9.3的有3个权限arcview、 arceditor、arcinfo,arcinfo是最高的权限所有者,在vs中建立arcgis desktop的窗体项目时候,设置权限为了能保证程序的执行,建议直接设置arcinfo权限,并且将拓展功能全部选中。 阅读全文
posted @ 2013-07-28 21:21 坚固66 阅读(287) 评论(0) 推荐(0)
摘要: 1. 问题 之前我们讨论的PCA、ICA也好,对样本数据来言,可以是没有类别标签y的。回想我们做回归时,如果特征太多,那么会产生不相关特征引入、过度拟合等问题。我们可以使用PCA来降维,但PCA没有将类别标签考虑进去,属于无监督的。 比如回到上次提出的文档中含有“learn”和“study”的问题,使用PCA后,也许可以将这两个特征合并为一个,降了维度。但假设我们的类别标签y是判断这篇文章的topic是不是有关学习方面的。那么这两个特征对y几乎没什么影响,完全可以去除。 再举一个例子,假设我们对一张100*100像素的图片做人脸识别,每个像素是一个特征,那么会有10000个特征,而对应的类别标 阅读全文
posted @ 2013-07-28 21:19 坚固66 阅读(910) 评论(0) 推荐(0)
摘要: 主成分分析(Principal components analysis)-最大方差解释在这一篇之前的内容是《Factor Analysis》,由于非常理论,打算学完整个课程后再写。在写这篇之前,我阅读了PCA、SVD和LDA。这几个模型相近,却都有自己的特点。本篇打算先介绍PCA,至于他们之间的关系,只能是边学边体会了。PCA以前也叫做Principal factor analysis。1. 问题 真实的训练数据总是存在各种各样的问题:1、 比如拿到一个汽车的样本,里面既有以“千米/每小时”度量的最大速度特征,也有“英里/小时”的最大速度特征,显然这两个特征有一个多余。2、 拿到一个数学系的本 阅读全文
posted @ 2013-07-28 21:17 坚固66 阅读(431) 评论(0) 推荐(0)
摘要: 一.简介 决策树学习是一种逼近离散值目标函数的方法,在这种方法中学习到的函数被表示为一棵决策树。二.决策树的表示法 决策树通过把实例从艮节点排列到某个叶子结点来分类实例,叶子结点即为实例所属的分类。树上的每一个结点指定了对实例的某个属性的测试,并且该结点的每一个后继分支对应于该属性的一个可能值。分类实例的方法是从这棵树的根节点开始,测试这个结点的属性,然后按照给定实例的属性值对应的树枝向下移动。然后这个过程在以新结点的根的子树上重复。决策树对应表达式:四.基本的决策树学习算法1. ID3算法通过自顶向下构造决策树来进行学习。构造过程是从“哪一个属性将在树的根结点被测试?”这个问题开始的。为了回 阅读全文
posted @ 2013-07-28 21:15 坚固66 阅读(312) 评论(0) 推荐(0)
摘要: 经过2天的努力终于算是大概弄清楚了opencv中的vs框架是大概是如何工作的了,下面贴一下我自己写的代码注释。非常详细。对初学者有帮助。尤其详细分析了RunBlobTrackingAuto()函数,在看注释之前应该首先大概了解一下BlobTrackingTests和BlobTrackingModules的说明文档。这样比较容易理解。说明文档的位置在 opencv的安装位置的opencv\doc\vidsurv代码注释为本人原创,转载请注明原为地址:http://blog.csdn.net/jia_zhengshen/article/details/9499103程序的大体流程是:首先main函 阅读全文
posted @ 2013-07-28 21:13 坚固66 阅读(841) 评论(0) 推荐(0)
摘要: sed 是 stream editor(流编辑器)的缩写。它能够完美配合正则表达式使用。sed命令众所周知的一个功能是文本的替换。 1、 sed可以替换给定文本中的字符串。它可以配合正则表达式来进行匹配: $ sed ' s/pattern/replace_string/ ' file 或者 $ cat file | sedsed ' s/pattern/replace_string/ ' //这个命令从stdin中读取输入 使用 -i 选项可以将替换结果应用于源文件。一般在进行替换后利用重定向来保存文件。 ... 阅读全文
posted @ 2013-07-28 21:11 坚固66 阅读(231) 评论(0) 推荐(0)
摘要: 最近BA用户反馈有两句看似很像的语句返回的结果数不一样,比较奇怪,怀疑是不是Hive的BugQuery 1 返回结果数6071select count(distinct reviewid) as dis_reviewcntfrom(select a.reviewidfrom bi.dpods_dp_reviewreport aleft outer join bi.dpods_dp_reviewlog bon a.reviewid=b.reviewid and b.hp_statdate='2013-07-24' where to_date(a.feedadddate) > 阅读全文
posted @ 2013-07-28 21:09 坚固66 阅读(950) 评论(0) 推荐(0)
摘要: .net调用Outlook 批量发送邮件,可指定Outlook中的账号来发送邮件 源码可以在我的资源列表中下载: MPOEMailhttp://download.csdn.net/my VS2012开发的,上传Excel,Excel中的内容为邮件的正文信息,Excel模板为Upload文件夹中文件 .net调用Outlook 批量发送邮件,可指定Outlook中的账号来发送邮件 解决调用Outlook时弹出对话框问题, 带安装程序。 如果本机已经安装了office但还是报未注册office错误时,可能是设置问题 可以在VS中设置中 “生成”->“目标平台”设为x86 ... 阅读全文
posted @ 2013-07-28 21:07 坚固66 阅读(375) 评论(0) 推荐(0)
摘要: 在Eclipse下编译cocos2dx项目,报错如下:Android NDK: jni/Android.mk: Cannot find module with tag 'CocosDenshion/android' in import path Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ? Android NDK: The following directories were searched: 请注意Android.mk文件中:$(call import-module 阅读全文
posted @ 2013-07-28 21:05 坚固66 阅读(510) 评论(0) 推荐(0)
摘要: 定理一:若是k个两两互质的正整数,,则同余式 (1) 与同余式组 (i=1,2,3,...,k) (2) 等价,并且若用表示对模的解数,T表示(1)式对模m的解数, 则: 所以求多项式的解可以用上述方法,先分解分别求出各个解再合并。 定理二:p是素数,r>=2是整数,是整系数多项式,设是同余方程 的一个解,以表示的导数。 (1)若,则存在整数t,使是同于方程的解。 (2)若,并且,则对于t=0,1,2,3,...,p-1,中的 x都是方程的解。 2013年全国邀请赛长沙赛区的E题就是利用上述的定理。 题目:Special equa... 阅读全文
posted @ 2013-07-28 21:04 坚固66 阅读(2204) 评论(0) 推荐(0)
摘要: Object类 什么是Object类? Object类是所有Java类的祖先,每个类都使用 Object 作为超类,所有对象(包括数组)都实现这个类的方法Object类是类层次结构的根,Object类是Java中唯一没有父类的类。其他所有的类,包括标准容器类,比如数组,都继承了Object类中的方法。 Object类方法有哪些? toString方法首先toString()方法是Object根类的一个默认方法 咱试一试输出一下默认的方法 //重写toString方法package me.tostring;public class ToString{ p... 阅读全文
posted @ 2013-07-28 21:02 坚固66 阅读(269) 评论(0) 推荐(0)
摘要: OpenSSL简介功能作用:SSL(SecureSocketLayer)是netscape公司提出的主要用于web的安全通信标准,分为2.0版和3.0版。TLS(TransportLayerSecurity)是IETF的TLS工作组在SSL3.0基础之上提出的安全通信标准,目前版本是1.0,即RFC2246。SSL/TLS提供的安全机制可以保证应用层数据在互联网络传输不被监听、伪造和窜改。内部包含什么:它是一个健全的、商业级的、全开放的和开放源代码的工具包,实现安全套接层协议(SSLv2/v3)和传输层安全协议(TLSv1)以及形成一个功效完整的通用目的的加密技术库。opensslsslv2、 阅读全文
posted @ 2013-07-28 21:00 坚固66 阅读(488) 评论(0) 推荐(0)
摘要: 在 Java 的开发中,数据库的应用是非常必要的,下面,我们为Java对于数据库的应用做一些必要的准备工作。、Java 对数据库的应用统称为 JDBC。JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。 先安装两个软件MySQL 和Navicat Premium(数据库管理工具)。这两个软件在百度很容易搜索下载到的。在此就不提供下载链接了。MySQL的安装 由于软件的安装比较简单,大部分都是直接点击下一步就可以了。 所以,在这里只提... 阅读全文
posted @ 2013-07-28 20:57 坚固66 阅读(229) 评论(0) 推荐(0)
摘要: 探索推荐引擎内部的秘密”系列将带领读者从浅入深的学习探索推荐引擎的机制,实现方法,其中还涉及一些基本的优化方法,例如聚类和分类的应用。同时在理论讲解的基础上,还会结合 Apache Mahout 介绍如何在大规模数据上实现各种推荐策略,进行策略优化,构建高效的推荐引擎的方法。本文作为这个系列的第一篇文章,将深入介绍推荐引擎的工作原理,和其中涉及的各种推荐机制,以及它们各自的优缺点和适用场景,帮助用户清楚的了解和快速构建适合自己的推荐引擎。信息发现如今已经进入了一个数据爆炸的时代,随着 Web 2.0 的发展, Web 已经变成数据分享的平台,那么,如何让人们在海量的数据中想要找到他们需要的信息 阅读全文
posted @ 2013-07-28 20:55 坚固66 阅读(345) 评论(0) 推荐(0)
摘要: 九度题目地址:http://ac.jobdu.com/problem.php?pid=1501 题目描述: 给定一个浮点数序列(可能有正数、0和负数),求出一个最大的连续子序列乘积。 输入: 输入可能包含多个测试样例。 每个测试样例的第一行仅包含正整数 n(n#include#includeusing namespace std;double d1, d2; //分别保存最大值和最小值int n;double ans, d, tmp1, tmp2;int main() { while (~scanf("%d", &n)) { scanf("%lf" 阅读全文
posted @ 2013-07-28 20:53 坚固66 阅读(197) 评论(0) 推荐(0)
摘要: Uniform GeneratorComputer simulations often require random numbers. One way to generate pseudo-random numbers is via a function of the formwhere ``" is the modulus operator.Such a function will generate pseudo-random numbers (seed) between 0 andMOD-1. One problem with functions of this form is 阅读全文
posted @ 2013-07-28 20:52 坚固66 阅读(178) 评论(0) 推荐(0)
摘要: 字符串匹配算法 -- Rabin-Karp 算法参考资料1 算法导论2lalor3记忆碎片 Rabin-karp 算法简介 在实际应用中,Rabin-Karp 算法对字符串匹配问题能较好的运行。Rabin-Karp 算法需要对字符串和模式进行预处理,其预处理时间为 O ( m ) ,在最坏情况下的运行时间为 O ( ( n-m+1 ) m ) ,但基于某种假设(不知道是何种假设),它的平均情况下的运行时间还是比较好的。 为了便于说明,假设 ∑ = { 0,1,2.....9 },这样每个字符都是一个十进制数字。(对于更一般的情况,可以假设每个字符都是基数为 d 的表示法中的一个数字... 阅读全文
posted @ 2013-07-28 20:50 坚固66 阅读(355) 评论(0) 推荐(1)
摘要: 如何快速比较这两个字符串是否相等?两个字符串相等的条件如下,字符串中的每个字母出现的次数都相等。例如:abbcd和acdbb是相等的,因为a都出现1次,b都出现2次,c都出现3次,d都出现4次。请先给出解题的思路,然后用你熟悉的语言进行具体的代码实现。(可在答案中注明解题思路) // 比较两个字符串字符计数相等 (要越快越好) bool compare(const char* str1, const char* str2) { int len1 = strlen(str1); int len2 = strlen(str2); if( len... 阅读全文
posted @ 2013-07-28 20:48 坚固66 阅读(898) 评论(0) 推荐(0)
摘要: nosql和关系型数据库比较?优点: 1)成本:nosql数据库简单易部署,基本都是开源软件,不需要像使用oracle那样花费大量成本购买使用,相比关系型数据库价格便宜2)查询速度:nosql数据库将数据存储于缓存之中,关系型数据库将数据存储在硬盘中,自然查询速度远不及nosql数据库3)存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,所以可以存储基础类型以及对象或者是集合等各种格式,而数据库则只支持基础类型4)扩展性:关系型数据库有类似join这样的多表查询机制的限制导致扩展很艰难缺点:1)维护的工具和资料有限,因为nosql是属于新的技术,不能和关系型 阅读全文
posted @ 2013-07-28 20:46 坚固66 阅读(275) 评论(0) 推荐(0)
摘要: 不容易系列之(4)——考新郎Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 16757 Accepted Submission(s): 6248 Problem Description 国庆期间,省城HZ刚刚举行了一场盛大的集体婚礼,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样的: 首先,给每位新娘打扮得几乎一模一样,并盖上大大的红盖头随机坐成一排; 然后,... 阅读全文
posted @ 2013-07-28 20:44 坚固66 阅读(221) 评论(0) 推荐(0)
摘要: 串行通信是指使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只需要少数几条线就可以在系统间交换信息,特别使用于计算机与计算机、计算机与外设之间的远距离通信。 通信接口是指中央处理器和标准通信子系统之间的接口。(是否可以理解为对电气特性的定义?) 串行接口是一种可以将接受来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接受的串行数据流转换为并行的数据字符供给CPU的器件。一般完成这种功能的电路,我们称为串行接口电路。 RS232、RS485等就是通讯接口,其中对电气特性进行了定义。比如逻辑高低电平分别是多少,怎么确定高低电平。(是否都有芯片对这些信. 阅读全文
posted @ 2013-07-28 20:42 坚固66 阅读(524) 评论(0) 推荐(0)
摘要: 好久没看数据结构了,今天终于要用到hash,整理一下写了个hash类模板templateclass DataType{public: T key; DataType(T k):key(k){} DataType(void){} bool operator ==(const DataType &a) { return key == a.key; } bool operator !=(const DataType &a) { return key != a.key; } };enum KindOfItem{Empty, Active, Delete};templateclass H 阅读全文
posted @ 2013-07-28 20:40 坚固66 阅读(376) 评论(0) 推荐(0)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=2837// a^b%p=a^(b%phi(p)+phi(p))%p#include#include#include#include#include#include#includeusing namespace std;#define INT long long INT euler( int n){ INT ret=1,i; for (i=2;i*i1) ret*=n-1; return ret;}INT Pow( INT a , INT b , INT m ){ INT ans = 1 ; while( .. 阅读全文
posted @ 2013-07-28 20:38 坚固66 阅读(148) 评论(0) 推荐(0)
摘要: 三范式使得数据库的设计变得有据可依,数据库的冗余大大减少。然而,三范式的定义,却不那么让人省心,一堆文字外加数学知识,让人着实有点小蒙。 虽然说完全按照三范式设计数据库并不可取,但是要想设计一个好的数据库,三范式的知识是必不可少的。 要想更好理解三范式的定义,那么了解依赖是必不可少的,了解了这几种依赖,那么理解起来三范式将会变的很容易。 首先,来说下最最基本的概念——函数依赖。 专业术语:若对于R(U)的任意两个可能的关系r1、r2,若r1[x]=r2[x],则r1[y]=r2[y],或者若r1[x]不等于r2[x],则r1[y]不等于r2[y],称X决定... 阅读全文
posted @ 2013-07-28 20:36 坚固66 阅读(355) 评论(0) 推荐(0)
摘要: 建立一个Struts2工程Ø1在MyEclipse中新建web工程Ø2在struts-2.2.1.1-all\struts-2.2.1.1解压struts2-blank.war(最基础的示例程序)Ø3进入struts-2.2.1.1\apps\struts2-blank\WEB-INF\classes下把struts.xml拷到web工程的src下面,因为工程编译完它默认就把src下的文件放到class文件下面。 Ø4.拷类库,在这个项目的lib文件下面拷 把jar放入lib后看不见jar文件,是因为MyEclipse默认视图是packageExplor 阅读全文
posted @ 2013-07-28 20:35 坚固66 阅读(203) 评论(0) 推荐(0)
摘要: 题意:将一个整数 n 进行无序拆分,一共有2^(n-1)种;输入一个整数 k ,问 k 在所有拆分中出现的次数。分析:a[n][k]=a[i][k]+2^(n-k-1);(k=3),而对所有的 k 都有a[k][k]=1,a[k+1][k]=2,........所以数组a的值与第二维k无关。那么 a[k]=1,a[k+1]=2,...;令n=n-k+1;即可以表示为 a[1]=1,a[2]=2,...a[n]=2*a[n-1]+2^(n-3)。最终得到 a[n]=2^(n-1)+(n-2)*2^(n-3);将n=n-k+1代入得:a[n-k+1]=2^(n-k)+(n-k-1)*2^(n-k- 阅读全文
posted @ 2013-07-28 20:33 坚固66 阅读(125) 评论(0) 推荐(0)
摘要: 用树形DP找到这颗树距离最远的两个点....对于一个询问K..若小于最远距离..显然只要走最远的这条边走K-1个边就行了.. 当K大于了最远距离..就要去走其他的点...而去其他点必须再回到这个主线..所以要加上(最远距离上点总数-K)*2... Program:#include#include#include#include#include#include#include#define ll long long#define oo 1000000007#define MAXN 100010using namespace std;vector Tree[MAXN];int dis[MAX... 阅读全文
posted @ 2013-07-28 20:31 坚固66 阅读(126) 评论(0) 推荐(0)
摘要: 题目:Broot 题意:给出k,m,newx的值,求方程x^k(mod m)=newx的解,其中m为素数。 解法步骤:(1)先暴力求m的原根g(2)大步小步求g^t1(mod m)=newx(3)则g^(t1+n*t2)(mod m)=newx,t2=m-1(4)x=g^y(mod m),x^k=(g^y)^k=g^(yk)=g^(t1+n*t2)那么就是求同于方程yk=t1(mod t2),求出y之后带入x=g^y(mod m)解出x #include #include #include #include #include #include using namespace std;typed 阅读全文
posted @ 2013-07-28 20:29 坚固66 阅读(438) 评论(0) 推荐(0)
摘要: 基础题,直线间关系#include #include #include #define eps 1e-8#define zero(x) (((x)>0?(x):-(x)) eps;}//判两点在线段异侧,点在线段上返回0bool opposite_side(point p1, point p2, line l){ return xmult(l.a, p1, l.b)*xmult(l.a, p2, l.b) eps) return distance(p, l.a) eps) return distance(p, l.a) = pi + pi) dlng -= pi + pi; if (.. 阅读全文
posted @ 2013-07-28 20:27 坚固66 阅读(190) 评论(0) 推荐(0)