Java/Practice(2)
-
Java Collection 빠르게 사용하기 ( feat. Big O )
N 개의 데이터를 입력받아 임의의 중복되지 않는 X 개의 데이터를 추출하시오!! 이러한 문제가 있다고 가정하자. 해당 문제는 추첨 기능을 간단하게 코드로 구현하는 문제이다. 실제로 이런 추첨 기능을 구현하는 건 수많은 방법이 존재하겠지만 JCF(Java Collection Framework)를 통해 간단하게 구현하고 성능적으로 좋게 하려면 어떤 방법이 좋을지 여러 상황을 가정하여 생각해 보려 한다. 또한 왜 이런 현상이 발생하는지도 함께 알아보도록 하자!! 그럼 해당 항목을 간단하게 구현해 보자!! go! go! 우선 입력받는 N 개의 샘플 데이터를 생성한다! int nCount = 10000000; //입력받는 N개의 데이터 갯수 (천만건) int xCount = 10000; //추첨할 X개의 데이터 ..
2021.10.15 -
자료형의 범위를 넘으면?
데이터 자료형의 범위는 어떻게 구해지며 범위는 어떻게 계산되는 것일까?? 데이터 자료형은 여러 가지가 존재하지만 확인하기 편한 정수형 자료형을 가지고서 확인해 보자. 자세한 데이터 유형 JAVA 변수(Variable) 및 데이터 유형(Data Type)을 참고. 음수를 포함한 정수형 자료형의 범위의 표현은 2의 보수 (Two`s complement)의 표현 범위로 나타내는데 이것 역시 프로그램에서 음수 표현 방식 여기를 참고하면 된다. 각설하고, 데이터의 표현 범위는 -2n-1 ~ 2n-1-1 이다. (n은 bit 단위(1byte = 8bit)로 계산) 자료형 메모리 계산식 정수 표현 범위 byte 1 Byte (8bit) -27 ~ 27-1 -128 ~ 127 short 2 Byte (16bit) -2..
2021.05.15