2017校园招聘编程题——增量矩阵和其转置相乘
2016-11-09 16:52
316 查看
1. 题目
增量矩阵是一个元素为初始值initialValue的递增值的矩阵。例如:如果初始值initialValue=1,且rows=3,columns=3,则增量矩阵为:1 2 3
4 5 6
7 8 9
写一个算法,将原始增量矩阵与其转置相乘。
输入:
initialValue
rows
columns
输出:
相乘结果
2. 分析
这个题主要考点不是数据结构,而是你对语言的掌握情况。怎样定义二维矩阵,怎样实现矩阵相乘等。具体见程序。二维矩阵定义详细内容请阅读这篇博文:
http://blog.csdn.net/fx677588/article/details/52708813
3. C++实现
#include <iostream> using namespace std; int** GetMultiple(int initialValue , int rows, int columns) { /**** 数组定义 ****/ int **n2Arr = new int* [rows]; //定义二维数组 for(int i=0; i<rows; i++) n2Arr[i] = new int[columns]; int **n2ArrTrans = new int* [columns];//转置数组定义 for(int i=0; i<columns; i++) n2ArrTrans[i] = new int[rows]; /**** 数组赋值 ****/ for(int i=0;i<rows;i++) //数组赋值 for(int j=0; j<columns; j++) { n2Arr[i][j] = initialValue++; } for(int i=0;i<rows;i++) //转置数组赋值 for(int j=0; j<columns; j++) { n2ArrTrans[j][i] = n2Arr[i][j] ; } int **nMulRel = new int* [rows]; //定义保存相乘结果矩阵 for(int i=0; i<rows; i++) { nMulRel[i] = new int[rows]; } /**** 两数组相乘 ****/ int nRel; for(int i=0;i<rows;i++) for(int j=0;j<rows;j++) { nRel = 0; for(int k=0;k<columns;k++) nRel += n2Arr[i][k] *n2ArrTrans[k][j]; nMulRel[i][j] = nRel ; } /**** 删除动态空间 ****/ for(int i=0;i<rows;i++) delete[] n2Arr[i]; delete[] n2Arr; for(int i=0;i<columns;i++) delete[] n2ArrTrans[i]; delete[] n2ArrTrans; return nMulRel;//因为动态分配内存,函数结束也未释放空间,所以可以传递指针过去 } int main( ) { int initialValue,rows,columns; cin>>initialValue; cin>>rows; cin>>columns; int **n2Arr = GetMultiple(initialValue , rows, columns); for(int i=0;i<rows;i++) { for(int j=0;j<rows;j++) { cout<<n2Arr[i][j]<<'\t'; } cout<<endl; } return 0; }
个人学习记录,由于能力和时间有限,如果有错误望读者纠正,谢谢!
转载请注明出处:CSDN 无鞋童鞋
相关文章推荐
- 网易2017校园招聘数据挖掘笔试题编程题 分田地
- 京东2017校园招聘Android研发工程师编程题(二):幸运数
- 2017校园招聘编程题——两个字符串中找到最大公共字符串
- 网易2017校园招聘编程题——分苹果
- 网易2017校园招聘编程题——暗黑字符串
- 华为2017校园招聘编程题——去除一段话字符串中重复单词
- 2017秋季网易校园招聘编程题和个人解答(python)
- 美团点评2017校园招聘编程题--取红包
- 奇虎360_2017校园招聘笔试编程题第一题
- 小米校园招聘 2017 编程题:号码分身
- 奇虎360_2017校园招聘笔试编程题第二题
- 网易校园招聘2017编程题--回文数问题
- 校园招聘-2017携程秋招后台开发笔试编程题
- 京东2017校园招聘编程题--幸运数
- 滴滴2017校园招聘编程题——阶乘末尾0的个数
- 2017校园招聘腾讯笔试题 在线编程题
- 算法题:从数组找数字(网易2017校园招聘)
- 2017拼多多校园招聘-系统运维工程师
- 微软2014校园招聘笔试编程题
- 华为2014校园招聘软件编程题:操作系统任务调度问题