예 교차로 알고리즘은 두 개의 배열 Python3를 구현

용지 관련 동작이 자료 소개 예제 Python3 개의 컴퓨팅 달성 Python3 대해서 등, 어레이, 비트 조작 이송을위한 Python3 요약 분석 형태의 두 가지 예와 함께 두 배열의 교차점을 계산 요소를 추가, 삭제 알고리즘을 구현 교차 알고리즘 어레이. 다음과 같이 참조 용으로 공유 :

문제 :

을 감안할 때 두 배열은, 그 교차점을 계산하는 방법을 쓰기.

옵션 하나 : 같은 요소의 최소 번호를 찾기 위해, 한 번에, collections.Counter & 연산자를 사용. 기술의 경우, 필요 친구는 다음을 참조 할 수 있습니다

# -*- coding:utf-8 -*-
#! python3
def intersect(nums1, nums2):
  """
  :type nums1: List[int]
  :type nums2: List[int]
  :rtype: List[int]
  """
  import collections
  a, b = map(collections.Counter, (nums1, nums2))
  return list((a & b).elements())
#测试
arr1 = [1,2,3,4,5]
arr2 = [3,4,5,6,7]
print(intersect(arr1,arr2))

결과 :

[3, 4, 5]

반응식 II하십시오 이송 배열은, 상기 발견 그리스트에 추가 될 때 신규 동일한 요소 동안 서로 동일한 소자 어레이의 삭제

# -*- coding:utf-8 -*-
#! python3
def intersect(nums1, nums2):
  """
  :type nums1: List[int]
  :type nums2: List[int]
  :rtype: List[int]
  """
  res = []
  for k in nums1:
    if k in nums2:
      res.append(k)
      nums2.remove(k)
  return res
#测试
arr1 = [1,2,3,4,5]
arr2 = [3,4,5,6,7]
print(intersect(arr1,arr2))

결과 :

[3, 4, 5]

우리는 쿤 버클 Python을 학습하는 것이 좋습니다 : 913066266, 어떻게 노인이 학습에서 봐! 기본적인 웹 개발 파이썬 스크립트에서, 파충류, 장고, 데이터 마이닝 등을 PDF, 실제 소스 코드]로 마무리되는 전투 데이터 프로젝트를 제로. 모든 작은 파이썬 파트너에게 주어! 매일 다니엘은 배우고 작은 세부 사항에주의 할 필요가 클릭에서 우리와 함께 할 수있는 몇 가지 방법을 공유하고, 타이밍 파이썬 기술을 설명 학습자 수집 파이썬

게시 47 개 원래 기사 · 원 찬양 53 ·은 50000 +를 볼

추천

출처blog.csdn.net/haoxun03/article/details/104270609