본문 바로가기

분류 전체보기

[Codility] Lesson 2 : OddOccurrencesInArray - JAVA 문제 A non-empty array A consisting of N integers is given. The array contains an odd number of elements, and each element of the array can be paired with another element that has the same value, except for one element that is left unpaired. For example, in array A such that: A[0] = 9 A[1] = 3 A[2] = 9 A[3] = 3 A[4] = 9 A[5] = 7 A[6] = 9 the elements at indexes 0 and 2 have value 9, the elements a.. 더보기
[Codility] Lesson 2 : CyclicRotation - JAVA 문제 An array A consisting of N integers is given. Rotation of the array means that each element is shifted right by one index, and the last element of the array is moved to the first place. For example, the rotation of array A = [3, 8, 9, 7, 6] is [6, 3, 8, 9, 7] (elements are shifted right by one index and 6 is moved to the first place). The goal is to rotate array A K times; that is, each eleme.. 더보기
[Codility] Lesson 1 - JAVA 문제 A binary gap within a positive integer N is any maximal sequence of consecutive zeros that is surrounded by ones at both ends in the binary representation of N. For example, number 9 has binary representation 1001 and contains a binary gap of length 2. The number 529 has binary representation 1000010001 and contains two binary gaps: one of length 4 and one of length 3. The number 20 has binar.. 더보기
‘==’ vs equals() vs hashcode() Java 프로그래밍에서 값이 같은지 비교하려면 어떻게 해야할까요? 숫자나 불리언 타입의 경우에는 ‘==’로 비교하면 되요! 그럼 값이 같은지 확인해주거든요. 그런데 문자열이나 날짜, 파일, 그 외의 객체(Object)를 비교할 때도 ‘==’을 사용하면 될까요? 이런 객체에서 ‘==’을 사용하게 되면 ‘False’가 나올거에요. 왜 그럴까요? 먼저 ‘== ‘ 비교에 대해 알아볼게요. ‘==’은 값을 비교해줘요. 그런데 앞에서 말 했듯이 객체(Object)의 값을 비교할 때에는 false가 나오기도 하죠. 그 이유는 int, byte, short, long, float, double, boolean, char 등 Primitive Type의 변수에 대해서는 저장된 값을 비교하게 되지만 String을 포함한 .. 더보기
[JAVA] UUID 프로젝트를 하다보면 UUID라는 값을 많이 보게 되더라고요. 처음에는 뭐를 의미하는지는 모르겠지만 어떤 ID값인가보다 생각했는데 이번에 UUID에 대해 작성하면서 제대로 공부해볼게요. UUID라는게 뭘까요? 먼저 UUID는 Universal Unique Identifier의 줄임말이에요. 한국말로 하면 범용 고유 식별자 라고 하네요. UUID는 네트워크 상의 개체들을 구분하기 위해 국제 표준(RFC 4122)으로 채택되어 사용하고 있는데요. Java에서는 JDK 1.5부터 지원하고 있어요. 이 UUID를 이용하면 객체를 구분할 수 있는 거의 고유한 값을 생성해준다고 해요. 여기서 거의 고유하다고 말한 이유는 UUID를 생성하다 보면 아주 희박한 확률로 중복된 값이 나올 수도 있기 때문이에요. 저는 여기서.. 더보기
[Python] 문자열 포매팅 1번 고객님 주문하신 햄버거 나왔습니다. 21번 고객님 주문하신 피자 나왔습니다. ... 201번 고객님 주문하신 아메리카노 나왔습니다. 식당에서 주문한 음식이 나왔을 때 이런 소리를 많이 들어봤죠? 문장을 보면 **대기 번호**와 **주문한 음식**만 다른 것을 알 수 있어요! 프로그래밍을 통해서 똑같이 만들 수 있는데요. 대기 번호와 주문한 음식을 변수로 받아서 문장을 작성하면 되요. 그럼 어떻게 작성하는지 알아볼까요? 가장 먼저 포매팅을 사용하지 않고 문장을 만들어 볼게요. wating_number = 1 food = '햄버거' print(str(wating_number) + '번 고객님 주문하신 ' + food + ' 나왔습니다.') >> (출력) 1번 고객님 주문하신 햄버거 나왔습니다. 출력문을.. 더보기
[Python] 문자열 연산 이번에는 문자열 연산에 대해 알아볼까요? 문자열 더하기 문자열을 뒤에 연결(Concatenation)해주는 역할을 해요. name = "홍길동" age = "20세" message = name + age print(message) >>> 홍길동20세 # 참고로 print에서 다음과 같이 큰따옴표와 띄어쓰기(공백)를 이용하여 작성하면 # 첫 번째 결과와 동일하게 출력되는 것을 알 수 있어요. print("홍길동" "20세") >>> 홍길동20세 # 추가적으로 print함수에서 콤마(,)를 사용하면 # 문자열을 띄어쓰기(공백)로 구분하여 출력할 수 있어요 print(name, age) >>> 홍길동 20세 문자열 곱하기 문자열을 n번 반복하여 연결해주는 역할을 해요. # 이름을 2번 반복하기 name = '.. 더보기
[Python] 문자열 자료형 파이썬 출력에서 사용한 ‘Hello World’ 기억하시나요? ‘Hello World’는 글자잖아요. 여러분들의 이름도 글자죠. 이처럼 글자를 다루는 자료형을 문자열(String)이라고 해요. 다른 프로그래밍 언어에서는 조금 더 상세하게 문자와 문자열이라는 자료형을 구분해서 사용하거든요? 그런데 파이썬에서는 구분이 없어요. 그냥 다 문자열이에요. 그럼 파이썬에서 문자열은 어떻게 사용할 수 있을까요? 작은따옴표(’)와 큰따옴표(”)를 이용한 방법 먼저 파이썬은 작은따옴표(’)와 큰따옴표(”)를 사용해서 문자열을 작성할 수 있어요. 물론 자바스크립트도 작은따옴표로 문자열을 표현할 수 있지만 C나 JAVA에서는 작은따옴표를 사용하면 문자라는 자료형으로 생각해요. 그럼 파이썬에서 문자열을 작성해볼까요? str1.. 더보기