Уведомления

Группа в Telegram: @pythonsu

#1 Июль 27, 2017 19:58:23

MEOW
Зарегистрирован: 2017-06-07
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

Сравнение двух массивов

Мне даны два массива.
x и y. Нужно сравнить их и вывести число, сколько раз встречались одинаковые числа
Пример x = 1054,1492
y = 1492,65536,1492,100.
Число 1492 встречается 2 раза во втором массиве и это число есть в первом, поэтому ответ 2.
Помогите реализовать, ибо моя программа работает слишком медленно

Офлайн

#2 Июль 27, 2017 20:30:47

Alex_HH
Зарегистрирован: 2014-03-03
Сообщения: 91
Репутация: +  13  -
Профиль   Отправить e-mail  

Сравнение двух массивов

показывайте код



————–
Зимой и летом heavy metall.
Технический прогресс - это падение вверх. Alex_HH (с)
Эстетизация жестокости есть квинтэссенция смысла человеческого существования. Alex_HH (с)
После бога идет не пустота, там метаданные. Alex_HH (с)

Офлайн

#3 Июль 27, 2017 20:32:17

MEOW
Зарегистрирован: 2017-06-07
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

Сравнение двух массивов

x = int(1)
q = int(input())
s =
h =
n = int()
z = int()
j = int()
for x in range(q):
s.append(int(input()))
m = list(set(s))
w = int(input())
for x in range(w):
h.append(int(input()))
for x in range(len(m)):
for x in range(w):
if m == h:
j = j + 1
n = n + 1
z = z+1
n = 0
print(j)


Не бейте сильно. Я совсем новичок в этом деле

Офлайн

#4 Июль 27, 2017 20:36:27

Alex_HH
Зарегистрирован: 2014-03-03
Сообщения: 91
Репутация: +  13  -
Профиль   Отправить e-mail  

Сравнение двух массивов

в питоне отступы имееют огоромное значение, оформьте код с помощью тегов и с сохраненнием форматирования.



————–
Зимой и летом heavy metall.
Технический прогресс - это падение вверх. Alex_HH (с)
Эстетизация жестокости есть квинтэссенция смысла человеческого существования. Alex_HH (с)
После бога идет не пустота, там метаданные. Alex_HH (с)

Офлайн

#5 Июль 27, 2017 20:39:20

MEOW
Зарегистрирован: 2017-06-07
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

Сравнение двух массивов

x = int(1)
q = int(input())
s =
h =
n = int()
z = int()
j = int()
for x in range(q):
—-s.append(int(input()))
m = list(set(s))
w = int(input())
for x in range(w):
—- h.append(int(input()))
for x in range(len(m)):
—-for x in range(w):
——–if m == h:
————j = j + 1
——–n = n + 1
—-z = z+1
—-n = 0
print(j)

Офлайн

#6 Июль 27, 2017 20:47:25

Alex_HH
Зарегистрирован: 2014-03-03
Сообщения: 91
Репутация: +  13  -
Профиль   Отправить e-mail  

Сравнение двух массивов

Есть спиециальный тег оформляющий код, пользуйте его.

вот вариант, посомтрите.

 def main():
    x = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    y = [2, 2, 2, 3, 6, 9, 8, 8, 8, 9, 10]
    for item in x:
        if item in y:
            print ('Элемент %d встречаеться %d раз' % (item, y.count(item)) )



————–
Зимой и летом heavy metall.
Технический прогресс - это падение вверх. Alex_HH (с)
Эстетизация жестокости есть квинтэссенция смысла человеческого существования. Alex_HH (с)
После бога идет не пустота, там метаданные. Alex_HH (с)

Офлайн

#7 Июль 27, 2017 20:49:09

MEOW
Зарегистрирован: 2017-06-07
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

Сравнение двух массивов

Alex_HH
Есть спиециальный тег оформляющий код, пользуйте его.вот вариант, посомтрите.
А можете рассказать очень подробно как работает?

Офлайн

#8 Июль 27, 2017 21:03:42

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

Сравнение двух массивов

 x = [1, 2, 3, 4, 5, 6, 7, 8, 9]
y = [2, 2, 2, 3, 6, 9, 8, 8, 8, 9, 10]
for i in set(x) & set(y):
    print('число {} встречается {} раз(а)'.format(i,max(x.count(i),y.count(i))))
выбираем максимальное число встречаемости из обоих списков

Офлайн

#9 Июль 27, 2017 21:04:16

Alex_HH
Зарегистрирован: 2014-03-03
Сообщения: 91
Репутация: +  13  -
Профиль   Отправить e-mail  

Сравнение двух массивов

Первый цикл пебирает все элементы спасика х, условие проверяет если элемент из списка х в списке у, если есть то с помощью метода count считаем сколько элементов есть с писке у. Метод count стандартный метод объекта list. Краткая справка по спискам (list)



————–
Зимой и летом heavy metall.
Технический прогресс - это падение вверх. Alex_HH (с)
Эстетизация жестокости есть квинтэссенция смысла человеческого существования. Alex_HH (с)
После бога идет не пустота, там метаданные. Alex_HH (с)

Офлайн

#10 Июль 27, 2017 21:06:17

MEOW
Зарегистрирован: 2017-06-07
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

Сравнение двух массивов

Большое спасибо!

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version