定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。
问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。
解决方案:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。
开闭原则是面...
分类:
其他好文 时间:
2015-06-27 16:31:09
阅读次数:
120
739. [网络流24题] 运输问题★★ 输入文件:tran.in 输出文件:tran.out 简单对比
时间限制:1 s 内存限制:128 MB
«问题描述:«编程任务:对于给定的m 个仓库和n 个零售商店间运送货物的费用,计算最优运输方案和最差运输方案。«数据输入:«结果输出:程序运行结束时,将计算出的最少运输费用和最多运输费用输出到文件tran.out中。输入文件示例 输出文件...
分类:
其他好文 时间:
2015-06-27 16:30:58
阅读次数:
116
组合模式:将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。
适用场合:当需求中是体现部分与整体层次的结构时,以及希望用户可以忽略组合对象与单个对象的不同,统一地使用组合结构中的所有对象时,就应该考虑用组合模式。
首先定义一个Componet抽象类public abstract class Component {
protect...
分类:
其他好文 时间:
2015-06-27 16:28:20
阅读次数:
109
1 初始化时就有一个tab空格
这是因为之间的内容不为空的原因,包括空格和换行,否则浏览器会认为空格或者换行都是文本域的内容,因此书写时需将紧靠在一起;
2 tab键对textarea操作无效
在textarea中使用tab键时是无效的,会切换到另一个控件上去,但是当我们有个需要时,要能够在文本域中使用tab键,可以使用javascript或者jquery方式实现:
...
分类:
Web程序 时间:
2015-06-27 16:27:58
阅读次数:
155
一个利用正则表达式来从文本中过滤提取数据的工具类。可以用来抓取网页后过滤所需的文本。^_^
正则表达式语法规则可参考:http://blog.csdn.net/clementad/article/details/46661279
代码如下:
package com.xjj.util;
import java.util.ArrayList;
import java.util....
分类:
其他好文 时间:
2015-06-27 16:29:42
阅读次数:
100
import java.util.Scanner;public class dian24 { public boolean isresult(String s) {
int tmp = 0;// 判断每位的值
int pre = 0;// 0+ 1- 2* 3/
int num = 0;// 存放计算结果
for (int i =...
分类:
其他好文 时间:
2015-06-27 16:28:21
阅读次数:
140
写一个程序实现功能:将两个字符串合并为一个字符串并且输出,用指针实现。#include int main()
{
char str1[20]={"Hello "}, str2[20]={"World"};
char *p=str1, *q=str2; while( *p ) p++;
while( *q )
{
*p = *q...
分类:
其他好文 时间:
2015-06-27 16:28:20
阅读次数:
103
#include
using namespace std;
int a[10]= {1,2, 3, 4, 5, 6, 7, 8, 9, 10};
int fun( int i);
int main()
{
int i ,s=0;
for( i=0; i<=10; i++)
{
try
{
s=s+fun(i);
...
分类:
其他好文 时间:
2015-06-27 16:28:28
阅读次数:
118
1. 问题描述 在给定的数组nums[]nums[]中找出两个数,他们的和target。(满足numsi+numsj=targetnums_i + nums_j = target。返回这两个数在数组中的位置,起始位置为1。且i<ji < j。
2. 方法与思路 第一遍扫描,建立hash映射;考虑到数组中可能有numsi=numsjnums_i = nums_j的情况,映射结构为map<in...
分类:
其他好文 时间:
2015-06-27 16:27:42
阅读次数:
102
各位看官们,大家好,上一回咱们说的是GCC编译相关的内容。这一回咱们说说如何使用GCC发出警告,闲
话休提,言归正转。让我们一起talk GCC吧!
看官们,GCC有编译警告的功能。什么是编译警告?台下有看官提问了。所谓的编译警告就是编译器在编
译过程中把一些不符合编译规则但是又符合编译语法的内容给予警告。我用一个现实生活中的例子给大家
做个比喻:大家都看过足球比赛吧,足球比...
分类:
其他好文 时间:
2015-06-27 16:26:43
阅读次数:
105
if exists (select *
from sysobjects
where name='usertype')
drop table usertype
go
if exists (select *
from sysobjects
where name='methodty...
分类:
其他好文 时间:
2015-06-27 16:27:05
阅读次数:
209
Implement a trie with insert, search, and startsWith methods.
Note:
You may assume that all inputs are consist of lowercase letters a-z.
前缀查找树,简单的可以实现为一种26叉树。需要在节点上增加一个字段,标明该节点是否是一个单词,还是仅仅是单词的前缀。代码...
分类:
其他好文 时间:
2015-06-27 16:26:34
阅读次数:
142
#include
using namespace std;
namespace CounterNameSpace
{
int upperbound;
int lowerbound;
class counter
{
int count;
public:
counter(int n)
{
if (n <= upperbound )
{
...
分类:
其他好文 时间:
2015-06-27 16:28:02
阅读次数:
117
VMwave下Ubuntu扩展磁盘空间
Ubuntu原预装磁盘空间20G,随着系统安装软件越来越多,空间慢慢不够用。打算安装DB2,许扩展磁盘空间。
环境:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 11.04
Release: 11.04
Codename: natty
第一步...
分类:
系统相关 时间:
2015-06-27 16:27:51
阅读次数:
220
备忘录模式:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。
适用场合:比较适合用于功能比较复杂,但需要维护或记录属性历史的类,或者需要保存的属性只是众多属性中的一小部分时。
首先定义一个Originator(发起人)类public class Originator { private String state;/...
分类:
其他好文 时间:
2015-06-27 16:25:29
阅读次数:
129
Git入门
git add是提交到暂存区域
git commit是提交到本地git目录 -a 跳过add到暂存域
git commit –amend 修复上一次提交
git push 是提交到远程目录
git log查看提交历史 -p显示每次提交的内容差异 -2最近两次提交 – stat显示摘要,如次数 –pretty=format:”%h -%an, %ar %s” –graph
git mv...
分类:
其他好文 时间:
2015-06-27 16:26:47
阅读次数:
122
普通javaBean快速重写toString()方法:
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
public String toString() {
return ToStringBuil...
分类:
其他好文 时间:
2015-06-27 16:26:19
阅读次数:
113