전체 글
-
TECHIT 앱 스쿨 2기: Android 2일차 (23.04.25)[THEC!T] 앱 스쿨2기 : Android 2023. 4. 25. 19:11
자료 출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 내용 오늘 강사님을 처음으로 뵙게 되었고 수업을 진행하였다. 시작은 강사님의 간단한 소개부터 강의 일정 설명을 받았습니다. 일정 설명이 끝난 후 강의를 들으면서 드문드문 적었기에 빠진 내용이 있을 수 있으나 대략적으로 하기와 같은 강의 및 설명을 해주셨습니다. 1.현재 안드로이드 제작에 있어서 자바와 코틀린의 차이 2. 웹/앱 생태계 환경에 대하여 3. 모바일 생태계에 대하여 4. 일정 진행 중 학습 및 사용하게 될 언어와 개발 툴에 대하여 5. 자바의 탄생에 대한 설명과 현재까지의 성장배경 및 특징들에 대하여 5-1. 자바의 특징 중 독립적이라는 특징과 JVM 설명 6. 자바 개발을 위한 개발환경 구축 설명 6-1. 이클립스 설치 방법 설명 및 ..
-
TECHIT 앱 스쿨 2기: Android 1일차(23.04.24 - OT)[THEC!T] 앱 스쿨2기 : Android 2023. 4. 24. 20:13
TECHIT 멋쟁이사자처럼 앱 스쿨 2기에 지원하고 합격한 후 Zoom을 이용하여 오늘 지원한 사람들과 앱 스쿨 2기 과정 중 과정자체에 집중할 수 있도록 도와주시는 운영진분들을 뵙게 되었었습니다. 오프라인이 아니라 ZOOM으로 뵈었지만, 지원자분들이나 운영진분들에게서 고수의 향기가 나는 느낌을 받아서 스스로 하수 같은 느낌을 받았었지만 그래도 나중에는 따라잡거나 앞서 갈 수 있도록 해야지라는 생각으로 마인드컨트롤을 했었던 것 같습니다. 그리고 앞으로의 일정 설명 및 질의응답 시간을 가지고 많은 부분에 대해서 설명을 해주셨고, 가장 강조하셨던 내용으로는 교육기간이 거의 5개월 정도 진행되기 때문에 페이스를 조절해야 되는 점과 진행간 혼자 뒤쳐진 것 같은 느낌이 들더라도 포기는 하지말라고 하셨었다. 아무래..
-
[백준][Kotlin] 1854번 K번째 최단경로 찾기백준 2023. 4. 23. 21:07
해당 문제는 다익스트라 알고리즘을 응용하여 작성할 수 있었습니다. 다익스트라 알고리즘은 가중치가 있는 그래프에서 시작 정점으로부터 다른 모든 정점까지의 최단 경로를 찾는 알고리즘입니다. 이 알고리즘은 너비 우선 탐색(BFS)을 응용한 알고리즘으로, 시작 정점에서부터 거리가 가장 가까운 정점부터 탐색하면서 최단 경로를 구합니다. 알고리즘의 구체적인 동작은 다음과 같습니다. 1. 시작 정점을 선택하고, 시작 정점에서 직접 이어져 있는 모든 정점들의 거리를 계산합니다. 2. 시작 정점으로부터 거리가 가장 가까운 정점을 선택합니다. 3. 이전에 선택된 정점을 통해 직접 이어져 있는 정점들의 거리를 갱신합니다. 4. 위 과정을 모든 정점이 선택될 때까지 반복합니다. 이 알고리즘의 시간 복잡도는 우선순위 큐를 사용..
-
[프로그래머스][Kotlin][코딩 기초 트레이닝] 배열 조각하기프로그래머스 2023. 4. 23. 00:40
해당 문제는 원래대로라면 코딩 기초 트레이닝모음 글에 추가를 하려고 하였었으나, 제가 작성을 잘못한것인지.... sliceArray()을 사용하여 작성하였었으나 자꾸만 실패가 나와 내가 기초내용을 잘못알고 있었나? 라고도 생각했지만 아무리 생각을 해봐도 실패가 나오는 증상이 스스로 말이 안되며,이해가 안되었기에 질문하기에 올라온 글들을 한번 봤더니.... 저랑 비슷한 질문들이 있었습니다. 그래서 질문글에서 추천해준 투포인트 개념을 사용하여 해당 문제를 통과 할 수 있었습니다. 아마도 테스트 자료 중 "query의 각 원소는 0보다 크거나 같고 남아있는 arr의 길이 보다 작습니다." 해당 조건이 아닌 자료가 있을 거라고 추측이 됩니다. 진짜 해당 조건이 맞다면 sliceArray() 사용하여 작성하였을 ..
-
[백준][Kotlin] 1916번 최소비용 구하기백준 2023. 4. 20. 15:58
해당문제는 다익스트라 알고리즘을 사용하여 작성 할 수 있었습니다. 다익스트라 알고리즘은 거리배열과 우선순위큐를 이용하여 가중치가 적은 자료부터 확인하는 로직,그리고 방문했던 노드 재방문 방지 등에 대한 로직에 대한 이해를 하고 있다면 쉽게 작성할 수 있는 알고리즘이라고 개인적으로 생각이 듭니다. 해당 문제는 코드 내에 주석을 이용하여 설명을 적어 쉽게 이해 할 수 있도록 하였습니다. 하기는 제가 작성한 코드와 제출 결과 입니다. import java.io.BufferedReader import java.io.BufferedWriter import java.io.InputStreamReader import java.io.OutputStreamWriter import java.util.* import kot..
-
[백준][Kotlin]1753 최단경로백준 2023. 4. 20. 15:26
해당 문제는 다익스트라 알고리즘을 이용하여 작성 할 수 있습니다. 다익스트라 알고리즘은 노드별로 가중치가 있고 가중치가 0 이상의 양수 일 때 사용가능 하며, 출발 노드로 부터 특정 노드까지의 최단 거리를 구할 때 사용합니다. 작성 포인트로는 첫번째. 인접 리스트로 그래프 구현하기 두번째. 최단 거리 배열 초기화 하기 세번째. 값이 가장 작은 노드 고르기 네번째. 최간 거리 배열 업데이트 하기 두번째 포인트에 맞춰 최단 거리 배열을 초기화 할 때 추 후 값이 작은 값을 선택해야 하므로 그나마 무한대에 가까운 값을 넣어 초기화 합니다. 만약 입력값의 최대 범위가 Int 일 경우에는 Int.MAX_VALUE 로 초기화 하여도 됩니다. 세번째 포인트의 경우 우선순위큐를 이용하여 가중치가 적은 순 부터 비교하면..
-
[백준][Kotlin]1948번 임계경로백준 2023. 4. 19. 16:57
해당 문제는 위상정렬의 개념을 이해하고 위상정렬을 이용하여 걸리는 시간을 구한 뒤 해당 로직을 반대로 돌리면서 1분도 쉬지 않고 달려야 하는 도로의 수를 구해야 하는 문제였습니다. 단순히 도시에 도착하기까지 걸리는 시간은 단순히 위상정렬을 이용하여 구할 수 있지만, 해당 로직을 어떻게 반대로 돌려야 하는지 헷갈릴 수 있습니다. 해당 문제 작성 시 포인트로는 해당 도시에서 갈 수 있는 경로를 구할 때 배열을 2개를 생성하여 첫번째 배열에는 정방향 일때 두번째는 역방향 일때의 경로를 저장하여 추후 로직을 반대로 돌릴 때 이용합니다. 하기는 제가 작성한 코드와 제출 결과 입니다. import java.io.BufferedReader import java.io.BufferedWriter import java.i..
-
[백준][Kotlin]16562번 친구비백준 2023. 4. 17. 16:38
해당 문제는 유니온파인드를 이용하여 작성할 수 있습니다. 코드를 작성하기 위한 포인트로는 친구들의 관계를 입력 받을 때 union 함수를 이용하여 미리 친구들의 관계를 합치는 것과 합칠 때 해당 둘 중 친구비가 더욱 적은 친구를 대표노드로 만들어 놓는 것입니다. 그리고 모든 입력을 받은 후 본인(이준석,0)과 union 함수를 이용하여 자신과 다른 대표 노드를 가지고 있는 친구들의 한하여 비교 및 친구비 계산을 하여 출력하면 됩니다. 하기는 제가 작성한 코드와 제출 결과 입니다. import java.io.BufferedReader import java.io.BufferedWriter import java.io.InputStreamReader import java.io.OutputStreamWriter ..