주어진 두 배열에서 누락된 요소를 찾습니다.
문제 설명: 주어진 두 배열에서 누락된 요소를 찾는 함수를 작성하십시오.
난이도: 쉬움
테스트 사례:
이 문제를 해결할 수 있는 방법에는 여러 가지가 있습니다. 다음은 4가지 가능한 솔루션입니다.
연산
사전 방법
배타적 OR(XOR) 방법
정렬 방법
합계 방법
시간 및 공간 복잡성
암호
class MissingElement(object):
def missingElement(self, arr1, arr2):
count = {}
for element in arr1:
if element in count:
count[element] += 1
else:
count[element] = 1
for element in arr2:
if element in count:
count[element] -= 1
else:
count[element] = 1
for k in count:
if count[k] != 0:
return k
def missingElement2(self, arr1, arr2):
result = 0
for element in arr1 + arr2:
result ^= element
return result
def missingElement3(self, arr1, arr2):
arr1.sort()
arr2.sort()
for ele1, ele2 in zip(arr1, arr2):
if ele1 != ele2:
return ele1
return arr1[-1]
def missingElement4(self, arr1, arr2):
return abs(sum(arr1) - sum(arr2))
단위 테스트
import unittest
from missingElement import MissingElement
class TestMisssingElement(unittest.TestCase):
def test_ele(self, sol):
self.assertEqual(sol([5, 5, 7, 7], [5, 7, 7]), 5)
self.assertEqual(sol([1, 2, 3, 4, 5, 6, 7],
[3, 7, 2, 1, 4, 6]), 5)
self.assertEqual(sol([9, 8, 7, 6, 5, 4, 3, 2, 1],
[9, 8, 7, 5, 4, 3, 2, 1]), 6)
print("All test cases passed")
def main():
test = TestMisssingElement()
element = MissingElement()
test.test_ele(element.missingElement)
test.test_ele(element.missingElement2)
test.test_ele(element.missingElement3)
test.test_ele(element.missingElement4)
if __name__ == "__main__":
main()
Github repo
행복한 코딩! 🌟
Reference
이 문제에 관하여(주어진 두 배열에서 누락된 요소를 찾습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/codewithml/find-missing-element-from-given-two-arrays-47l3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)