首页 新闻 会员 周边 捐助

查看数组中的元素是否存在连续3次相同的元素!

0
悬赏园豆:60 [已解决问题] 解决于 2015-11-02 16:14

比如   int[] ary = new int[] { 3,2,8,9,22,7,7,7,8,6},这就是存在连续3次相同的元素“7”的,其实我就是想查看一个数组有没有连续出现三次“7”的,然后我会通过变量来做接下来的操作!

小洋哥868的主页 小洋哥868 | 初学一级 | 园豆:96
提问于:2015-11-02 15:20
< >
分享
最佳答案
0

直接循环,然后计数呗。

懒得开VS,以下是JS代码,你可以参考下:

var arr = [3, 2, 8, 9, 22, 7, 7, 7, 8, 6];
var counter = 1,value;
for(var i=0; i< arr.length;i ++){
  if(value !== arr[i]){
    coutner = 1;
  }else{
    counter += 1;
  }
  value = arr[i];
  if(counter === 3){
    break;
  }
}

//value的值就是首次重现三次的元素。
收获园豆:20
幻天芒 | 高人七级 |园豆:37207 | 2015-11-02 15:27
其他回答(3)
0

楼上你改一点不就满足你的呢?一次遍历,arr[i],arr[i-1],arr[i-2]相等不就行了,给你一个相同序列是变量的函数,你看下改改

size_t lis(const int src[], size_t sz,int count)
{
  if (src==NULL || sz<1) return 0; 
  vector<int> min_v(sz);
  min_v[0]=src[0];
  size_t i,len=1;
  int value;
  for (i=1; i<sz; ++i) {
    value=src[i];  
    if (value=min_v[len-1]) min_v[len++]=value;
    else *lower_bound(&min_v[0],&min_v[len], value)=value;
    //if(len==count)
   {
     //你的操作
   }
  }
  return len;
}
收获园豆:20
稳稳的河 | 园豆:4216 (老鸟四级) | 2015-11-02 16:00

谢谢!

支持(0) 反对(0) 小洋哥868 | 园豆:96 (初学一级) | 2015-11-02 16:10
0
 int[] array = new int[] { 1, 2, 3, 3, 3, 4, 5, 5, 5, 6 };
            var list = new List<int>();

            int count = 0;
            for (int i = 0; i < array.Length; i++)
            {
                if (i != 0)
                {
                    if (array[i - 1] == array[i])
                    {
                        count++;
                        if (count == 2)
                        {
                            list.Add(array[i]);
                            count = 0;
                        }
                    }
                }
            }
收获园豆:20
Zery | 园豆:6151 (大侠五级) | 2015-11-02 16:09

谢谢!

支持(0) 反对(0) 小洋哥868 | 园豆:96 (初学一级) | 2015-11-02 16:13
0
int[] arr = new int[] { 1, 2, 3, 4, 5, 6, 6, 7, 7, 7, 8, 9 };
var repeatNum = 3;
for (var i = repeatNum - 1; i < arr.Length; i++)
{
    if (arr[i - 2] == arr[i - 1] && arr[i - 1] == arr[i])
    {
        Console.WriteLine(i+":"+arr[i]);
        break;
    }
}
Console.ReadKey();
寒冰丿 | 园豆:179 (初学一级) | 2015-11-04 11:54
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册