关于二维数组和vector<vector<>>的那些事
2014-07-03 09:07
330 查看
1.二维vector变二维数组
经过这样的变化,成为m*n矩阵,可以对其进行相关的数组操作;
2二维数组的转置问题
3vector<vector<>>的初始化
总之不论二维数组还是vector<vector<>>的操作,核心思想就是"转化",高维向低维转化;另外注意学习push_back的用法
这次主因素分析代码的集成,由于对上述基本算法和源代码的数据结构的不清楚花费了很多时间,深深体悟基础不牢地动山摇,写于此以自勉!
<prename="code"class="cpp"><spanstyle="font-size:18px;">vector<vector<double>>Num(m); for(inti=0;i<m;i++) Num[i].resize(n);</span>
经过这样的变化,成为m*n矩阵,可以对其进行相关的数组操作;
2二维数组的转置问题
<spanstyle="font-size:18px;"> for(inti=0;i<m;i++) for(intj=0;j<n;j++) Num[i][j]=SampleMatrix[j][i];//转置</span>
3vector<vector<>>的初始化
<prename="code"class="cpp"><spanstyle="font-size:18px;">//用两个矩阵拼接对</span><spanstyle="font-size:18px;">vector<vector<>>的初始化;</span>
for(inti=0;i<nItr;i++) { vector<double>objTemp=vParams[i]; for(intn=0;n<nvObjs;n++) { objTemp.push_back(vOutputs[i] ); } SampleM.push_back(objTemp); }
//push_back的用法
<prename="code"class="cpp"> for(inti=0;i<m;i++) { <prename="code"class="cpp"><prename="code"class="cpp">floattemp=0; for(intj=0;j<n;j++) {
temp+=Num[i][j]; SumX.push_back(temp);} }
}
总之不论二维数组还是vector<vector<>>的操作,核心思想就是"转化",高维向低维转化;另外注意学习push_back的用法
这次主因素分析代码的集成,由于对上述基本算法和源代码的数据结构的不清楚花费了很多时间,深深体悟基础不牢地动山摇,写于此以自勉!
相关文章推荐
- C++学习:关于“std::vector<Type>::iterator”的一个错误
- 关于C++ vector<S>使用时,错误 5 error C2719: “_Val”: 具有 __declspec(align('16')) 的形参将不被对齐
- 关于include<vector>编译错误问题
- <2011-04-27总结 关于编程累积>
- 关于出现Don't know how to iterate over supplied "items" in &amp;amp;lt;forEach&amp;amp;gt;异常
- 关于< tbody >的一个实例,很实用。
- 关于framename的,HTML <a> 标签的 target 属性
- 11/7/3 vector<T> 算法<alogrithm>
- 条款18:避免使用vector<bool>
- vector<char*>和vector<string>的不同
- 关于<<、>>、~、&、|、^的介绍
- HTML字符实体(关于&amp;nbsp;&amp;gt;&amp;lt;等)
- sql server 关于不等于运算符的研究 '<>'
- 关于gridview表头生成<th>问题
- 关于<:if>没有<c:else>解决方案
- C++泛型编程中算法库<algorithm>和向量<vector>的简单实例
- html <"input "/>关于value 空格后的内容消失的问题
- 关于cat >file,cat <file <
- 关于<a>的一点问题问题及解决方案
- HTML字符实体(关于&amp;nbsp;&amp;gt;&amp;lt;等)