본문 바로가기

전체 글124

[Algorithm] Chapter01 연습문제 Q1 ~ Q3 Q1 네 값의 최대값을 구하는 max4 메서드를 작성하세요. static int max4(int a, int b, int c, int d) 내 답안 import java.util.Scanner; public class chap_01_q1_max4 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("숫자 4개를 입력해주세요"); int a = scanner.nextInt(); int b = scanner.nextInt(); int c = scanner.nextInt(); int d = scanner.nextInt(); System.out.println("최댓값은 " + m.. 2021. 3. 27.
[Algorithm] 스택 (Stack) - Kotlin 이번 포스팅에서는 스택(Stack)에 대해 정리해보고 직접 구현해보려 한다. 스택은 기본적으로 선형구조로 이루어져 있으며 LIFO(Last In First Out) 맨 마지막에 들어간 데이터를 가장 먼저 출력하는 방식의 구조를 갖고 있다. 기본적인 용어는 push(데이터를 넣는 함수), pop(데이터를 꺼낼 함수) top(데이터를 넣을 위치와 꺼낼 위치)가 있다. 스택을 구현할 때, push를 통해 데이터를 넣고 top의 값을 수정해주며 pop을 통해 데이터를 꺼내고 top의 위치를 수정하는 방식으로 구현하면 된다. Stack.kt import java.util.* class Stack(private val size: Int) { private val stackArray = Array(size){ _ -.. 2021. 3. 20.
[Algorithm] 큐 (Queue) - Kotlin 이번 포스팅에서는 큐(Queue)에 대해 정리해보고 큐의 종류 중 원형 큐를 직접 구현해보려 한다. 큐는 컴퓨터의 자료 구조의 한 가지로, FIFO(First In First Out) 구조로 저장하는 형식을 말한다. 쉽게 말하면 배열에서 값을 빼낼 때, 가장 먼저 들어온 값을 우선적으로 뺀다고 생각하면 된다. 큐에서 기본적인 용어로는 put 또는 insert (값을 넣는 함수), get 또는 delete(값을 꺼내는 함수)를 의미하며 front의 경우는 데이터를 get 할 수 있는 위치를 뜻하며 rear의 경우 데이터를 배열에 넣을 위치를 뜻한다. 원형 큐란? 일반적인 선형 큐는 일반적으로 크기가 제한되어 있으며 만약 빈 공간을 사용하여 제한 사항을 보완하려는 경우 모든 자료를 꺼내거나 자료를 한 칸씩 .. 2021. 3. 20.
[Android] 구글 인앱 결제 개인 프로젝트를 진행하면서 식권 구매 페이지에 결제 시스템을 넣어야 해서 전에 한번 해본 적이 있는 구글 인 앱 결제로 진행하였고 블로그에 결제 관련 로직을 정리해보려 한다. 일단 구글 인 앱 결제를 이용하기 위해선 google play console에서 개발자 계정을 만든 뒤 앱을 업로드하는 게 필요하다. 나 같은 경우는 알파 버전에 앱을 올리고 인앱 상품을 만들어 테스트 한 뒤 프로덕션으로 올리는 방식으로 진행하였다. 아무튼 이 과정은 생략하고 코드 쪽에 대한 설명으로 포스팅하려 한다. 먼저 BillingHelper.kt을 구현할 것이다. 이 파일은 인앱 결제를 위한 클라이언트 객체를 만들어주기 위한 클래스다. import android.content.Context import com.android... 2021. 3. 20.
compareTo() 정리(Int) - Kotlin (2) 이전 글 compareTo() 정리(String, Int) - Kotlin (1)예전부터 뭔가를 정렬할 때, 가장 많이 썼던 함수 중 하나가 compareTo()였다. 하지만 이 함수를 쓰면서도 정확하게 어떤 식으로 반환되는지 Int형일 경우와 String형일 경우 차이가 무엇인지 등 정확junyoeng.tistory.com 이전 글에서 compareTo()의 String을 주로 정리를 해봤다면 이번에는 Int형을 기준으로 정리해보려 한다. Int형을 compareTo() 함수를 통해 비교하며 정리한 건 아래와 같다. Int형의 반환 값은 1, 0 , -1 총 3가지만 존재한다. 기준 값이 비교 값보다 더 클 경우 1을 반환하고 기준 값과 비교 값이 같은 경우 0을 반환하며 기준 값보다 비교 값이 더 큰.. 2021. 3. 12.
compareTo() 정리(String) - Kotlin (1) 예전부터 뭔가를 정렬할 때, 가장 많이 썼던 함수 중 하나가 compareTo()였다. 하지만 이 함수를 쓰면서도 정확하게 어떤 식으로 반환되는지 Int형일 경우와 String형일 경우 차이가 무엇인지 등 정확히 알지 못하고 그냥 느낌대로 다른 사람들이 쓰는 것을 그대로 사용하다보니 수동적인 형태로 사용했었다. 그래서 이번 기회에 compareTo() 함수를 이용하여 여러 상황에서 테스트해보며 개념 정리를 해보려 한다. compareTo는 Comparable 인터페이스 안에 오버 로딩으로 정의되어 있고 아래와 같은 설명도 적혀있다. Comparable.kt"이 개체를 지정한 개체와 순서를 비교합니다. 이 개체가 지정된 다른 개체와 같으면 0을, 다른 개체보다 작으면 음수를, 다른 개체보다 크면 양수를 반.. 2021. 3. 12.
[Algorithm] 프로그래머스 가장 큰 수(1) - Kotlin 프로그래머스의 정렬 문제 중 Level 2문제인 가장 큰 수에 대해 정리해보려 한다. 코딩 테스트 연습 - 가장 큰 수 | 프로그래머스 (programmers.co.kr) 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 programmers.co.kr 문제의 내용을 요약하면 주어진 배열의 객체를 모두 한 번씩 사용해 만들 수 있는 가장 큰 수를 구하는 문제이다. numbers return [6, 10, 2] "6210" [3, 30, 34, 5, 9] "9534330" 제한 사.. 2021. 3. 10.
Best Way 앱 출시 일부 기능들만 구현하여 개시하였으며 추가적으로 기능들을 구현해 나갈 예정입니다. 현재는 일부 IP만 접속이 가능하게 설정되어 앱 이용이 필요하신 경우 댓글이나 메일로 연락 주시면 감사하겠습니다. 메일 주소: jypjun12@gmail.com Best Way - Google Play 앱 Best Way - Google Play 앱 Best Way는 캡스톤 디자인II 와 졸업 작품으로 만든 앱으로 교통대학교의 본부 식당의 식단을 제공하고 식권 판매를 앱을 통해서 진행할 수 있으며 구매한 식권은 QR을 통해 사용할 수 있도록 기능 play.google.com 2021. 3. 10.
[Android] Activity 정리 (4대 컴포넌트) 안드로이드는 4대 컴포넌트가 존재하는데 그 중 하나인 액티비티에 대해 정리해보려한다. 액티비티의 특징 1. 사용자와 상호작용을 하기 위한 진입점이다. 2. 앱에서 하나 이상 필요한 존재이다. 3. UI를 하나 이상 갖고 있다. 액티비티의 생명주기 안드로이드 생명주기를 보여주는 메서드들은 콜백 메서드 개념으로 구현되어 있다. onCreate() - 생명주기 메서드 중 가장 먼저 실행되는 메서드 - 전체 주기 동안 한 번만 발생해야 하는 기본 시작 로직 - 주로 데이터 목록 바인딩, 활동을 ViewModel과 연결, 일부 클래스 범위 변수를 인스턴스화 등을 처리함 - savedInstanceState 매개 변수를 수신 하며 이를 통해 이전 저장 상태가 포함된 Bundle 객체를 수신할 수 있음 onStart.. 2021. 3. 6.
반응형