Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Определить, имеются ли в массиве повторяющиеся элементы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Обойтись без If ? http://www.cyberforum.ru/cpp-beginners/thread1085858.html
Доброго времени суток, уважаемые форумчане. Помогите, пожалуйста, разобраться со сложившейся ситуацией. Есть код: for(it = objectsList.begin();it != objectsList.end(); it++) { ...
C++ Не работает длинная арифметика Не работает длинная арифметика сложение. #include <iostream> #include <vector> #include <iomanip> #include <string> #include <cstdlib> #include <conio.h> #define BASE 10 #define LEN 1 http://www.cyberforum.ru/cpp-beginners/thread1085829.html
C++ Преобразование строки в массив цифр
Помогите разобраться с функцией для преобразования строки в массив цифр. void readlong (type &vec) { std::string str; std::cin >> str; for (int i = str.size (); i > 0; i--) ...
C++ Написать функцию, для поиска максимального элемента в указанной строке двумерного массива. Сдвинуть в двумерном массиве все строке циклически вправо н
Написать функцию, для поиска максимального элемента в указанной строке двумерного массива. Сдвинуть в двумерном массиве все строке циклически вправо на количество элементов равное максимальному...
C++ Установка SDL 2 http://www.cyberforum.ru/cpp-beginners/thread1085812.html
Из-за некоторых проблем с обработкой клавиатуры решил перейти с GLUT на SDL 2. Вопрос: как на Ubuntu установить этот самый SDL 2? Добавлено через 23 минуты Смог установить только SDL 1.2, может...
C++ Русский язык в программе Что нужно сделать что бы можно было использовать русский язык в программе #include "stdafx.h" #include <iostream> #include <map> #include <string> using namespace std; int main() { ... подробнее

Показать сообщение отдельно
LVV
57 / 57 / 4
Регистрация: 15.02.2010
Сообщений: 249

Определить, имеются ли в массиве повторяющиеся элементы - C++

30.01.2014, 23:47. Просмотров 794. Ответов 2
Метки (Все метки)

Дан двумерный массив.
Определить имеются ли в нём повторяющиеся элементы.
Как это сделать?
Для одномерного знаю:
C++
1
2
3
4
5
6
7
for(int i=0; i<N; i++)
     for(int j=i+1; j<N; j++)
               if (M[i]==M[j])
                       {
                       cout << "repeated";
                        return 0;
                        }
Для двумерного же M[k][n] никак не могу разобраться с вложенными циклами...
C++
1
2
3
4
5
6
7
8
9
for(int i=0; i<k; i++)
    for(int j=0; j<n; j++)
        for(int ii=0; ii<k; ii++)
            for(int jj=i+1; jj<n; jj++)
                if (M[ii][jj]==M[i][j])
                                   {
                                     cout << "repeated";
                                      return 0;
                                   }
Вижу, что это не правильно. Но как и что тут изменить?
Можно, конечно, создать одномерный массив из элементов двумерного, а затем искать повторения... Но хотелось бы обойтись без дополнительных массивов?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru