需求描述:現有乙個不定長的陣列,裡面包含多個維度的資訊,求所有的組合
簡單說這個需求就是類似電商平台買鞋子,假設鞋子a有兩個顏色,分別為紅色和白色,有三種尺碼,分別為37、38和39,那這樣就會有如下6種組合:
1.紅色37碼
2.紅色38碼
3.紅色39碼
4.白色37碼
5.白色38碼
6.白色39碼
如上的例子中只有兩個維度,顏色和尺碼,當前的需求是要算出不固定維度下的所有組合情況,js**實現如下:
//當前遍歷的索引
varcurindex = 0;//
結果集varresultarr = ;//把
json
字串轉換為物件
varallarr = json.parse('[,]},,]},,]},,,]}]');
//var allarr = json.parse('[,,,,]},,,,,,,]}]');
structureresult('');
console.info(resultarr);
/***
遞迴構造結果集
*/functionstructureresult(result)else
//如果迴圈的是最後一層
, 那就新增到結果集
if(curindex == allarr.length - 1)else
//當前迴圈的最後乙個元素
if(index == list.length - 1)
});}}
不定長陣列 vector
使用需要包含標頭檔案 include vector是乙個模板類,所以需要用vectora或者vectorb這種方式宣告。vector的常用操作 int len a.size 返回vector長度 a.resize 100 把a長度變為100 a.push back 10 把10新增到尾部 a.pop...
不定長陣列 vector
vector是乙個不定長陣列模板類,所以需要用vectora或者vectorb這樣的方式來進行宣告乙個vector。vector是乙個類似於int a的整數陣列,而vector就是乙個類似於string a的字串陣列。使用vector時要加 include標頭檔案 常用的vector陣列的方法有 i...
STL vector 不定長陣列
包含在vector標頭檔案中 使用方式為 vector int vec 定義了乙個vec陣列 vector int vec 10 定義了元素數,各元素都為0 有 size 函式 返回陣列元素數,即陣列大小 resize 函式 重置陣列大小 push back argu 函式向後新增元素argu po...