例如:現在有一批鞋子,其中顏色有[『白色』,『黑色』,『灰色』];大小有[『40』,『41』,『42』],樣式有[『板鞋』,『運動』,『休閒』],要求寫乙個演算法,實現[[『白色』,『40』,『板鞋』], [『白色』,『42』,『休閒』] …]這樣的組合
qlist> xx::getallgroup(qlist> val){
int orisize = val.size();
qvector tempindexarr(orisize);
tempindexarr[orisize - 1] = -1;
qvector templengtharr(orisize);
for (int i = 0; i < orisize; i++){
templengtharr[i] = val[i].size();
qlist> newlist;
bool completeflag = false;
while (!completeflag){
int changeindex = val.size() - 1;
bool isrightindex = false;
while (!isrightindex){
tempindexarr[changeindex] += 1;
if (tempindexarr[changeindex] >= templengtharr[changeindex]){
if (changeindex == 0){
isrightindex = true;
completeflag = true;
else{
tempindexarr[changeindex--] = 0;
else{
isrightindex = true;
if (isrightindex && !completeflag){
qvector pointvec;
for (int i = 0; i != val.size(); i++){
pointvec.push_back(val[i][tempindexarr[i]]);
newlist.push_back(pointvec);
return newlist;
已經工作的程式設計師朋友可以關注下我的gzh「程式設計師成長日誌」,分享日常工作中解決的問題即可賺取稿費,大家一起成長~
349 取兩個陣列的交集
給定兩個陣列,編寫乙個函式來計算它們的交集。示例 1 輸入 nums1 1,2,2,1 nums2 2,2 輸出 2 示例 2 輸入 nums1 4,9,5 nums2 9,4,9,8,4 輸出 9,4 說明 輸出結果中的每個元素一定是唯一的。我們可以不考慮輸出結果的順序。1,雙重迴圈 13mscl...
JS兩個陣列取交集filter
關於filter的解釋,菜鳥教程這樣寫道 filter 方法建立乙個新的陣列,新陣列中的元素是通過檢查指定陣列中符合條件的所有元素。經常用來寫兩個陣列取交集的演算法 var arr1 1,5,6,4,2 var arr2 2,5,3,4 var arr3 arr1.filter function n...
php 取陣列數量 php統計陣列元素個數的方法
count 對陣列中的元素個數進行統計 sizeof 和count 具有同樣的用途,這兩個函式都可以返回陣列元素個數.可以得到乙個常規標量變數中的元素個數,如果傳遞給這個函式的陣列是乙個空陣列,或者是乙個沒有經過設定的變數,返回的陣列元素個數就是0 array count value 統計每個特定的...