26.01.2016, 17:35
|
Интересующийся
|
|
Регистрация: 25.02.2015
Сообщений: 27
|
|
Сравнить двумерный массив с одномерным
Подскажите как сравнить 2 разных массива и выводить если совпадение имеется "как на примере" то выводить true
var m1 = [[1, 0, 0],[2, 3, 0],[1,2, 3],[1, 2, 5],[1, 3, 5]];
var m2 = [1,2,1,1,5];
либо может как то преобразовывать 1 мерный в 2 мерный
|
|
26.01.2016, 17:44
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,133
|
|
x1ds,
интересно что вы спросили?
|
|
26.01.2016, 17:49
|
Интересующийся
|
|
Регистрация: 25.02.2015
Сообщений: 27
|
|
У меня есть 2 массива, мне нужно сравнить их, и если к примеру первый элемент из массива m2, число 1, есть в первом элементе массива m1, то мы возвращаем true . Только мне нужно что бы это было для всех элементов, и если они все совпадут то true, если хоть 1 число не совпадет то false
var m1 = [[1, 0, 0],[2, 3, 0],[1,2, 3],[1, 2, 5],[1, 3, 5]];
var m2 = [1,2,1,1,5];
|
|
26.01.2016, 17:52
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,133
|
|
x1ds,
теплее ... но также ...ни ... не понятно
|
|
26.01.2016, 18:22
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
x1ds, массив m2 заведомо не равен массиву m1[0] уже только потому, что у них разное количество элементов, и не важно при этом есть ли значения m2 среди значений m1[0]. Вы не равенство пытаетесь определить, а вхождения, так? Тогда нужно брать только уникальные значения из массива m2.
|
|
26.01.2016, 18:25
|
Интересующийся
|
|
Регистрация: 25.02.2015
Сообщений: 27
|
|
Сообщение от laimas
|
x1ds, массив m2 заведомо не равен массиву m1[0] уже только потому, что у них разное количество элементов, и не важно при этом есть ли значения m2 среди значений m1[0]. Вы не равенство пытаетесь определить, а вхождения, так? Тогда нужно брать только уникальные значения из массива m2.
|
Да все верно, вхождения
|
|
26.01.2016, 18:38
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Ну и поясните - есть в первом элементе массива m1, то мы возвращаем true . Только мне нужно что бы это было для всех элементов.
Массив m1 имеет 5 элементов, значит есть в первом элементе массива m1 трактуем проверить вхождения значений m2 только первого элемента массива m1, то есть m1[0]. Или же нужно проверять также вхождения значений m2 и в остальных элементах m1, то есть - m1[1], m1[2], m1[3], .... (Только мне нужно что бы это было для всех элементов)?
У вас случайно нет "глубинной связи" между ними? То есть m2[0], как то по логике какой-то задачи связан с m1[0], а m2[1] с m1[1] и т.д.?
|
|
26.01.2016, 18:38
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,133
|
|
laimas,
что-то в массиве m2 уникальности никакой не вижу ...
|
|
26.01.2016, 18:41
|
Интересующийся
|
|
Регистрация: 25.02.2015
Сообщений: 27
|
|
var m1 = [[1, 0, 0],[2, 3, 0],[1,2, 3],[1, 2, 5],[1, 3, 5]];
var m2 = [1,2,1,1,5];
Если сравнивать вот эти 2 то тогда true
Если к примеру изменить какой то элемент то тогда false
var m1 = [[1, 0, 0],[2, 3, 0],[1,2, 3],[1, 2, 5],[1, 3, 5]];
var m2 = [5,2,1,1,5];
|
|
26.01.2016, 18:41
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от рони
|
что-то в массиве m2 уникальности никакой не вижу
|
Я писал " нужно брать только уникальные значения", а не то, что все значения m2 уникальны. Смысл проверять вхождения 1, трижды. Я так думаю, он либо не правильно поясняет задачу, либо не может описать логической связи этих массивов.
|
|
|
|