如何写出一个m文件解决问题如下:
求一个循环向量中,0元素连续重复出现两次以上的字符串 并计数。
如A=[8 7 9 0 0 3 3 3 0 0 0 0 0 3 2 4 0 0 6 0 0]
则输出结果:
一个为零的是0.
两个为零的是3.
三个为零的是0.
四个为零的是0.
五个为零的是1.
六个为零的是0.
以此类推
21个为零的是0.
例如: 遍历数组, 遍历次数为数组长度-1, 从下标 0 的位置开始, 调用方法 indexOf() 判断该元素是否重复, 重复复及去除该元素(数组将塌陷一个单位), 循环索引-1, 重复判断该下标位置直至该下标位置不存在重复项, 才进入下一个位置循环, 直至数组去重完成
var arr3 = [1, 2, 3, 1, 9, 6, 4, 5, 7, 1, 4, 5, 6]
for (var i = 0; i < arr3.length - 1; i++) {
var index = arr3.indexOf(arr3[i], i + 1) // -1 或者 对应下标
if (index != -1) {
arr3.splice(index, 1); // 重复位置删除
i--;
}
}
console.log("去重后: ", arr3)