java mediator模式_Java实现中介者模式-Mediator Pattern
程序功能:实现两个矩阵相乘的C语言程序,并将其输出
代码如下:
#include "stdafx.h"
#include "windows.h"
void Multi(int * left, int * right, int * result, int f1, int f2, int s1, int s2);
int main()
{
int i, j;
int a[4][3] =
{ {1,2,3},
{4,5,6},
{7,8,9},
{1,2,3}};
int b[3][3] =
{ { 1,2,3 },
{ 4,5,6 },
{7,8,9} };
//c矩阵为a矩阵与b矩阵的乘积
int c[4][3];
//计算两个矩阵相乘
Multi(a[0], b[0],c[0], 4, 3, 3, 3);
//输出c矩阵
for (i = 0; i < 4; i++)
{
for(j=0;j<3;j++)
printf("%4d ", c[i][j]);
printf("\n");
}
system("pause");
return 0;
}
//矩阵相乘算法,最后四个参数是两个相乘的矩阵的行数和列数
void Multi(int * left, int * right, int * result,int f1, int f2, int s1, int s2)
{
//int a[f1][f2], b[s1][s2], c[f1][s2];
//a[i][j]==a[i*f2+j]
//由矩阵相乘,要求f2=s1,以下用f2
for (int i = 0; i < f1; i++) //i表示第i行
{
for (int j = 0; j < s2; j++) //j表示第j列
{
result[i*f2 + j] = 0; //在这里 result[i][j] = result[i*f2+j];
for(int p=0;p
{
result[i*f2 + j] +=left[i*f2+p]*right[p*f2+j];
}
}
}
}
运行结果:
java mediator模式_Java实现中介者模式-Mediator Pattern相关推荐
- Java设计模式(九)—中介者模式、备忘录模式、解释器模式
本章目录标题 第21章 中介者模式 21.1 应用场景:智能家居 21.2 传统方式 21.3 中介者模式 21.4 应用案例:智能家居 21.5 中介者模式的注意事项 第22章 备忘录模式 22.1 ...
- java多人聊天室的实验任务_Java基于中介者模式实现多人聊天室功能示例
本文实例讲述了Java基于中介者模式实现多人聊天室功能.分享给大家供大家参考,具体如下: 一 模式定义 中介者模式,用一个中介对象来封装一系列对象之间的交互,使各个对象中不需要显示地引用其他对象实例, ...
- Mediator模式(C++中介者模式含个人Demo源码)
重新温习GOF23到第18个中介者模式了,感觉还是蛮不错的,写了一个小小的Demo来解释下他们之间的关系. 中介者模式其实就相当于:中介,租房人,还有房主三者之间的关系. 房主A,租房人B首先联系了中 ...
- Java设计模式(九)—— 中介者模式
中介者模式是指一种用一个中介对象来封装一系列的对象交互.中介者使个对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变他们之间的交互. 适合中介者模式的情景如下: 许多对象以复杂的方式交互, ...
- java 状态设计模式_JAVA设计模式:状态模式
转载:http://www.cnblogs.com/pony1223/p/7518226.html 一.引出状态模式 假设我们现在有一个糖果机项目,那么我们知道正常一般糖果机提供给用户的行为有这么几种 ...
- java模板方法模式_Java中的模板方法模式
java模板方法模式 模板方法模式是一种行为模式,建议在超类中更一般地定义算法. 该算法是在称为模板方法的方法中定义的. 子类仅定义更具体的算法步骤的实现. 使用这种设计模式的好处是,算法后面的任何更 ...
- java aes 模式_Java实现多种加密模式的AES算法-总有一种你用的着!
前言 对于AES算法,相信很多程序员小伙伴都听过.用过,其原理本文就不介绍了,而是讲讲在实际项目中的应用.前几天,项目需要跟乙方接口对接,乙方提供加密后的信息串,而我这边负责对加密串进行解密.其中加解 ...
- java web简单工厂模式_JAVA设计模式之工厂模式(简单工厂模式+工厂方法模式)
在面向对象编程中, 最通常的方法是一个new操作符产生一个对象实例,new操作符就是用来构造对象实例的.但是在一些情况下, new操作符直接生成对象会带来一些问题.举例来说, 许多类型对象的创造需要一 ...
- java金字塔程序_Java中的金字塔模式程序
java金字塔程序 Pattern programs are used a lot in interviews to understand the logical thinking abilities ...
最新文章
- c++ clr编译dll在c#调用时出现“试图加载不正确的格式”“找不到dll”错误的解决...
- Python元组与字典详解
- python 中的短路逻辑是什么?
- 74cms3.0——Error:Can‘t select MySQL database(74cms3.0)...
- java 递归深度优先遍历_Java基础 - 二叉树的遍历之深度优先遍历(递归遍历)
- LeetCode 304. 二维区域和检索 - 矩阵不可变(DP)
- PCL库使用中遇到的一些问题及解决方法
- win7安装证书时无响应的解决办法
- android之activety生命周期
- “error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用”解决方法。
- PR开场片头模板 恐怖惊悚电影侦探节目logo展示PR模板
- fastcgi php 进程用户 lighttpd,说说lighttpd的fastcgi
- 2021-2022-1 20212810《Linux内核原理与分析》第一周作业
- 外卖点餐APP效果图
- 只用div+CSS做淘宝手机端首页
- 背景图片和颜色混合叠加多种混合模式
- hdu 1983 Kaitou Kid - The Phantom Thief (2)【Bfs+暴力枚举】
- 微型计算机m3500q,联想ThinkCentre M3500q超小商用台式机
- A Two-step Method for Extrinsic Calibration between a Sparse 3Dand a Thermal Camera 笔记
- jsp和java前后台的交互
热门文章
- 解决Ubuntu “E: 软件包 vim 还没有可供安装的候选者“问题
- SQL Server无法连接到(local)问题的解决的方法
- Abp vNext 自定义 Ef Core 仓储引发异常
- 解决常见接口跨域问题
- 在Node.js中,如何从其他文件中“包含”函数?
- 如何在Xcode 4中“添加现有框架”?
- win11天气小组件如何开启 Windows11开启天气组件的设置方法
- springMVC的文件上传于下载
- java windows wrapper_Java Service Wrapper 发布Java程序为Windows服务
- MTK:DrvGen驱动的使用