给出Header数组,并使所有其他数组成为相同格式的header数组:
HEADER ["", "", "a", "b", "", "c", "d","",""]
1. ["", "", "1", "2", "", "3", "4"] ==== CORRECT FORMAT
2. ["1","2","", "3", "4","",""] ==== WRONG FORMAT
3. ["", "", "", "", "1", "2", "", "3", "4"] = WRONG FORMAT
Output array :
1. ["", "", "1", "2", "", "3", "4"]
2. ["", "", "1", "2", "", "3", "4"]
3. ["", "", "1", "2", "", "3", "4"]
标题和输入数组的长度相同。但是输出数组的长度必须一直到标题数组元素的最后。
我无法使用以下算法修复所有类型的输入:
alignArray(arr1, arr2) {
let arr3 = [];
let arr4 = _.compact(arr2);
let count = 0;
_.map(arr1, function (num, index) {
if (_.isString(num) && !(_.isEmpty(num))) {
if (arr4[count])
arr3.push(arr4[count]);
else
arr3.push("");
count++;
} else {
arr3.push("");
}
});
return arr3;
}
答案 0 :(得分:1)
一种方法是将第一个输入数组视为一个队列,每当WHERE account_id LIKE '00000001%'
有一个值时就使项目出队。根据您的更新,我在输出数组的末尾修剪了空字符串。
b