- 博客(51)
- 资源 (2)
- 收藏
- 关注
原创 状态模式--State
定义:允许对象在内部状态改变时改变它的行为, 对象看起来好像修改了它的类;形象比喻:跟MM交往时,一定要注意她的状态哦,在不同的状态时她的行为会有不同,比如你约她今天晚上去看电影,对你没兴趣的MM就会说 “有事情啦”,对你不讨厌但还没喜欢上的MM就会说“好啊,不过可以带上我同事么?”,已经喜欢上你的MM就会说“几点钟?看完电影再去泡吧怎么样?”,当然你看电影过程中表现良好的话,也可以把MM的状
2013-08-08 14:10:37 539
转载 imsdroid学习
imsdroid 学习(初认识) 由于工作的需要,麦洛最近都在研究语音通话的技术。工作中,一个同事无意发现了开源项目idoubs。idoubs是imsdroid的IOS版本。 从google以及baidu来看,除了官网http://code.google.com/p/imsdroid/介绍外,有关imsdroid或idoubs貌似的帖子并不是很多。但从官网的介绍可以知道
2013-07-30 10:29:30 998
转载 android虚拟机上安装SD卡
在cmd命令行下,进入platform-tools目录下。 1.创建sdcard mksdcard -l mycard 256M E:\android\myCards\mysdcard.img 这样就在该目录下创建好了一个SD卡的虚拟镜像。其中-l命令行参数表示虚拟磁盘的卷标号。 256M是创建的虚拟sdcard的大小,在9M-102
2013-07-30 10:20:57 791 3
转载 在电脑上android虚拟机如何安装apk文件
首先,android环境已经配置好。运行一个AVD,可以运行AVD manager.exe,选中一个虚拟机,start---launch即可。将要安装的apk文件复制到SDK下的tools目录下,运行cmd.exe,cd /d d:\android\android-sdk\platform-tools(我的adb.exe在platform-tools目录下,所以我都考到了该目录下)然后
2013-07-30 10:20:12 1040
原创 模板方法模式--钩子的应用
定义:钩子是一种被声明在抽象类中的方法, 但是只有空的或者默认的实现。 钩子的存在,可以让子类有能力对算法的不同点进行挂钩, 要不要挂钩, 由子类自己决定。这个又上一篇“模块方法”添加钩子概念演变而来。 我们同样采用的是咖啡和茶饮料来解释钩子其中一种的用途。 1、超类加上钩子CaffeineBeverageWithHook.javapublic abstract cla
2013-07-29 17:28:41 669
原创 模板方法模式--Template Method
定义:在一个方法中定义一个算法的骨架, 而将一些步骤延迟到子类中。 模板方法使得子类可以在不改变算法的结构下, 重新定义算法中的某些步骤。比如我们饮料店同时出售咖啡和茶, 在准备饮料时, 都遵循下面的步骤:1、茶:把水煮沸、用沸水浸泡茶叶、把茶倒进杯子、加柠檬;2、咖啡:把水煮沸、用沸水冲泡茶叶、把咖啡倒进杯子、加糖和牛奶;我们可以发现, 把水煮沸和把饮料倒进杯子, 是重复的。 另
2013-07-29 17:01:09 391
原创 命令模式--command
定义:将“请求”封装成对象, 以便使用不同的请求、队列、日志来参数化其他对象。 命令模式也支持可撤销的操作。形象比喻:我有一个MM家里管得特别严,没法见面,只好借助于她弟弟在我们俩之间传送信息,她对我有什么指示,就写一张纸条让她弟弟带给我。这不,她弟弟又传送过来一个COMMAND,为了感谢他,我请他吃了碗杂酱面,哪知道他说:“我同时给我姐姐三个男朋友送COMMAND,就数你最小气,才请我吃面。
2013-07-26 15:56:17 511
原创 单键模式--Singleton
定义:确保一个类只有一个实例, 并提供一个全局访问点。这个模式非常简单,下面给一个简单的代码说明public class Singleton { private static Singleton uniqueInstance; private Singleton() {} public static Singleton getInstance() { if (null =
2013-07-25 15:53:18 453
原创 抽象工厂模式
定义:提供一个接口, 用于创建相关或依赖对象的家族, 而不需要具体类;抽象工厂模式是从前面的工厂方法模式演变而来。 依然由pizzaStore来举例。 我们从原料入手, 每种pizza的制作方法和流程都一样, 由pizza类控制, 不同是各种原料。 比如cheesePizza,原料有:Sauce、Dough, Cheese; 对于不同地区, 原料风味不同,如纽约风味的cheesePizza
2013-07-25 15:21:30 411
原创 工厂方法模式--Factory Method
定义:一个创建对象的接口, 但由于子类决定要实例化的类是哪一个。 工厂方法让类把实例化推迟到子类;形象比喻:追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory本文采用pizza store来说明。 pizzaStore有几种pizza, 比如ch
2013-07-25 11:02:51 459
原创 文件操作
// ttt.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include typedef struct FileHead{ double iVersion; char AuthorName[20]; long fileLen
2013-07-25 10:42:17 492
原创 树
#include #include #include typedef char TypeData;typedef struct TreeNode{ TypeData data; struct TreeNode *lch,*rch;}TreeNode;TreeNode *CreateTree();void PreOrderTraval(TreeNode* pTree);//先
2013-07-25 10:41:22 403
原创 哈希表
#include #include #include #define MAXSIZE 100//#define NULLKEY -1//#define DELKEY -2//typedef int KeyType;//typedef char *InfoType;///********开放定址存储*************/typedef struct{ KeyType k
2013-07-25 10:40:16 425
原创 家谱树-树的利用
#include #include #include #include #define MAXSIZE 20typedef struct TreeNode{ int Num;//记录这个人的子女数 char name[20];//姓名 struct TreeNode *NextNode[MAXSIZE+1];//记录儿女结点 struct TreeNode *parent;/
2013-07-25 10:39:43 989
原创 表达式求值-栈的利用
栈的功能//栈的顺序存储//stack.h#include#include#define MAXSIZE 100typedef char ElemType;typedef struct //SqStack{ ElemType a[MAXSIZE]; int top;}SqStack;void init_s(SqStack *s){ s=(SqStack *)m
2013-07-25 10:36:42 567 1
原创 图
#include #include #include #define NMAX 20//最大顶点个数#define EMAX 20//最大的边数#define NULL 0#define InfoMax 999//用999表示正无穷typedef int VexType;//图的顶点的数据类型typedef float adjType;//图中边的带权值类型/********
2013-07-25 10:26:52 377
原创 顺序表
//MyList.h#ifndef MYLIST_H#define MYLIST_H#include#include#define MAXSIZE 20typedef int ElemType; typedef struct{ ElemType a[MAXSIZE]; int length;}SqList;void creat_list(SqList *L);//创
2013-07-25 10:25:00 593
原创 队列
/queue.h //队列,链表存储#include #include #include typedef int ElemType;typedef struct QNode{ ElemType data; struct QNode *next; }QNode; typedef struct { QN
2013-07-25 10:20:02 413
原创 栈
//栈的顺序存储//stack.h#include#include#define MAXSIZE 20typedef int ElemType;typedef struct //SqStack{ElemType a[MAXSIZE];int top;}SqStack;void init_s(SqStack *s){ s=(SqStack *)malloc(sizeo
2013-07-25 10:18:47 386
原创 字符串
MyString.h//MyString.h#ifndef MYSTRING_H#define MYSTRING_H#include#include#include#define MAXSIZE 100/**链表存储**/typedef struct StrNode{ char ch; struct StrNode *next; int length;}StrN
2013-07-25 10:14:49 448
原创 双链表
Main.cpp#include #include #include #include "BothNode.h"void main(){ Node *h; char c,index,ch='0'; int n; h=(Node *)malloc(sizeof(Node)); printf("创建一个双向链表:\n"); CreateNode(h); PrintNo
2013-07-24 11:20:34 445
原创 单链表
/*无意中翻看以前的日志,看到我先前的单链表程序,里面竟有许多错误。那会刚开始学习C语言,对于指针和内存的操作介于半懂,但还是自以为是的认为自己写的不错。所以这次重新把链表写了一遍,不敢保证完全正确,只能说在前面的基础上提高。攀登程序这座高峰,只能是越攀越高,从来没有到达顶峰的那一天。tangwen 2010-12-31*/main.cpp/* ================
2013-07-24 11:17:16 382
原创 排序算法
#include void BubbleSort(int a[], int size);void InsertSort(int a[], int size);void swap(int &a,int &b){ int t= a; a = b; b = t;}void PA(int a[],int size){ for(int i=0;i<size;i++) printf(
2013-07-24 11:11:42 331
原创 金刚石
#include #include #include main(){ float t; int x0=400,y0=300; int n,i,j,r; int x[50],y[50]; int gdriver=DETECT,gmode; initgraph(&gdriver,&gmode," "); printf("input n(23-31) and r(100-200)\
2013-07-24 11:09:41 842
原创 直线生成(DDA、中点、Bresenham)算法
#include #include void linedda(int x0,int y0,int x1,int y1,int color);void BresenhamLine(int x0,int y0,int x1,int y1);void MidPointLine(int x0,int y0,int x1,int y1,int color);main(){ int a,b,
2013-07-24 11:08:46 2008 1
原创 三次Bezier曲线
#include #include #include #include char msg[1];float px[10]={30,60,90,120,150,190,220,250,280,310};float py[10]={150,200,200,170,100,100,170,200,200,180};main(){ float a0,a1,a2,a3,b0,b1,b2
2013-07-24 11:07:50 1073
原创 装饰者模式--Decorator
定义:动态地将责任附加到对象上。若要扩展功能, 装饰者提供了比集成更有弹性的替代方案。举个例子:Mary过完轮到Sarly过生日,还是不要叫她自己挑了,不然这个月伙食费肯定玩完,拿出我去年在华山顶上照的照片,在背面写上“最好的的礼物,就是爱你的Fita”,再到街上礼品店买了个像框(卖礼品的MM也很漂亮哦),再找隔壁搞美术设计的Mike设计了一个漂亮的盒子装起来……,我们都是Decorator,
2013-07-24 10:59:49 341
原创 观察者模式--Observer
定义:定义了对象之间的一对多依赖, 这样一来, 当一个对象改变状态时, 它的所有依赖者都会收到通知并且自动更新;举个例子:想知道咱们公司最新MM情报吗?加入公司的MM情报邮件组就行了,tom负责搜集情报,他发现的新情报不用一个一个通知我们,直接发布给邮件组,我们作为订阅者(观察者)就可以及时收到情报啦。在本文中, 我们采用气象监测应用来阐述。主要包括三个部分:气象站(获取实际气象数据的物理
2013-07-23 16:00:24 448
原创 图形三维变换
/* Note:Your choice is C IDE */#include#include#include#include#include#define ZOOM_IN 0.9#define ZOOM_OUT 1.1int turn1[3];typedef struct{ float x; float y; float z;}point;typedef st
2013-07-23 10:10:58 535
原创 图形二维变换
#include#include#includeint initjuzhen(int m[3][3]){ int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) m[i][j]=0; for(i=0;i<3;i++) m[i][i]=1;}main(){ int x0,y0,x1,y1,i,j; int a[3][3]; c
2013-07-23 10:10:02 504
原创 梁友栋-Barsky裁剪算法
#include #include #include #define LEFT 1#define RIGHT 2#define BOTTOM 4#define TOP 8#define XL 150#define XR 350#define YB 150#define YT 300void LBClipLine(float x1,float y1,float x2,fl
2013-07-23 10:09:29 3459
原创 中点分割裁剪算法
#define LEFT 1#define RIGHT 2#define BOTTOM 4#define TOP 8#define XL 150#define XR 350#define YB 150#define YT 300#include #include #include main(){ int x1,y1,x2,y2,
2013-07-23 10:09:11 4018
原创 Cohen-Surtherland裁剪算法
#define LEFT 1#define RIGHT 2#define BOTTOM 4#define TOP 8#define XL 150#define XR 350#define YB 150#define YT 300#include #include "graphics.h"main(){ int gdriver=D
2013-07-22 15:36:21 1412
原创 填充算法
#include#include#includevoid floodfill4(int x,int y,int oc,int nc){ if(getpixel(x,y)==oc) { putpixel(x,y,nc); delay(2000); floodfill4(x,y+1,oc,nc); floodfill4(x,y-1,oc,nc); floodfill4(
2013-07-22 15:33:36 527
原创 圆生成算法(中点画圆、Bresenham画圆)
#include #include void MidPointCircle(int r, int color);void CirclePoints(int x,int y,int color);void BresenhamCircle(int xc,int yc,int r,int color);void plot_cicle_point(int xc,int yc,int x,int
2013-07-22 15:32:56 2373
原创 RSA加密解密算法
#include #include #include #include #define MAX 20typedef struct{ int a[MAX]; int N;}BTN;int Euclidean(int a,int b);//欧几里得算法求 最大公约数int ExtendedEuclidean(int a,int b);//扩展欧几里得算法求逆int Squar
2013-07-22 15:25:10 645
原创 扩展欧几里德求逆
int ExtendedEuclidean(int a,int b){//扩展欧几里得算法求逆s=a^-1mod(b) int a0,b0,t0,t,s0,s,q,r; int temp; a0=a; b0=b; t0=0;t=1;s0=1;s=0; q=a0/b0; r=a0-q*b0; while(r>0) { temp=t0-q*t; t0=t; t=temp
2013-07-22 15:23:41 522
原创 欧几里德算法求最大公约数
int Euclidean(int a,int b){//欧几里得算法求 最大公约数 int r0,r1,m,r,q,rm; r0=a; r1=b; m=1; r=r1; if(a==0 || b==0) r=0; while(r!=0) { rm=r; q=r0/r1; r=r0-q*r1; r0=r1; r1=r; m++; } return rm
2013-07-22 15:22:37 448
原创 黄金分割最优解
/********************************黄金分割算法********************************/#include #include #include float GoldSection(float a0,float b0,float f);//f表示精度float Fun(float x);void main(){ floa
2013-07-22 15:20:00 943
原创 Armiji线性搜索
/***************************************Armijo线性搜索****************************************/#include #include #include #define N 2float Armijo(float X[N],float d[N],float b,float r,float p);
2013-07-22 15:19:28 852
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人