sean.jin
Spark Code Blog
sean.jin
전체 방문자
오늘
어제
  • 분류 전체보기
    • 개발공부
      • Kotlin
      • LeetCode
      • Algorithm
      • React
    • 주식차트
    • 책리뷰
    • 유틸리티

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 주식책리뷰
  • 경제
  • 주식입문자
  • 오
  • 변동성
  • 부의 추월차선
  • 주식투자
  • 자기개발
  • 책리뷰
  • 트리플 위칭데이
  • 책추천
  • 쿼드러플위칭데이
  • 아빠와 딸의 주식투자 레슨
  • 네마녀의날
  • 초보
  • 책

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
sean.jin
개발공부/LeetCode

[Kotlin] Array 에 같은 숫자 찾기, HashMap활용 풀이 - LeetCode: Single Number

[Kotlin] Array 에 같은 숫자 찾기, HashMap활용 풀이 - LeetCode: Single Number
개발공부/LeetCode

[Kotlin] Array 에 같은 숫자 찾기, HashMap활용 풀이 - LeetCode: Single Number

2021. 6. 10. 15:03
반응형

문제

Given a non-empty array of integers nums, every element appears twice except for one. Find that single one.

You must implement a solution with a linear runtime complexity and use only constant extra space.

 

int로만 이루어진 nums array에서 2번 이상 반복되지 않는 수를 찾아야 합니다. 

 

예시

intArray를 input으로 받고 반복되지않은 수를 output으로 내보내야 합니다. 

 

풀이

class Solution {
        fun singleNumber(nums: IntArray): Int { //Int를 반환합니다. 
        val hash_table = HashMap<Int, Int>() //빈 HashMap을 먼저 만듭니다. 
        for (i in nums) { //nums 의 값들이 들어갑니다. 
            hash_table[i] = hash_table.getOrDefault(i, 0) + 1
            // 만약 IntArray에서 같은 수가 없으면 default값인 0이 리턴되고 거기에 +1을 하게 됩니다.
            //getOrDefault 설명
            .getOrDefault(Object Key, default Value) 가 들어갑니다. 
            
            
        }
        for (i in nums) {
            if (hash_table[i] == 1) { // 1로 표현된 값을 찾으면 그게 single number입니다.
                return i
            }
        }
        return 0
    }
 }

이렇게 hasmap을 통하여 간단하게 풀수있습니다. 

HashMap을 처음 접하셨다면 저의 Collection정리 포스트를 보고 오시면 도움되실 겁니다. 

 

 

[Kotlin] Collection 정리 list, set, map 차이 - HashMap, hashmapof, mutableMap, setOf, mutableSetOf,ArrayListof,listof 사용

[Kotlin] Collection 정리 list, set, map 차이 - HashMap, HashMapOf, MutableMap, SetOf, MutableSetOf, ArrayListof, ListOf HashMap, hashmapof, mutableMap, setOf, mutableSetOf, ArrayListof, listof 들의..

underdog11.tistory.com

 

반응형

'개발공부 > LeetCode' 카테고리의 다른 글

[Kotlin] LeetCode: PlusOne 쉬운 풀이 해설  (0) 2021.06.14
[Kotlin] LeetCode: Intersection of Two Arrays IISolution 풀이  (0) 2021.06.11
[Kotlin] Array에 반복되는 아이템 삭제하기 - ArrayList distinct - LeetCode: Contains Duplicate - 풀이 과정  (0) 2021.06.08
[Kotlin] LeetCode - Best Time to Buy and Sell Stock IISolution - 풀이과정  (0) 2021.06.05
[Kotlin] String, Int 순서 뒤집기 - LeetCode: Reverse Integer 풀이  (0) 2021.06.05
  • 문제
  • 예시
  • 풀이
'개발공부/LeetCode' 카테고리의 다른 글
  • [Kotlin] LeetCode: PlusOne 쉬운 풀이 해설
  • [Kotlin] LeetCode: Intersection of Two Arrays IISolution 풀이
  • [Kotlin] Array에 반복되는 아이템 삭제하기 - ArrayList distinct - LeetCode: Contains Duplicate - 풀이 과정
  • [Kotlin] LeetCode - Best Time to Buy and Sell Stock IISolution - 풀이과정
sean.jin
sean.jin
앱개발, 알고리즘, JS, Kotlin, 미국 취업준비

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.