본문 바로가기

분류 전체보기114

[TIL] 05.08 https://1chanhue1.tistory.com/entry/%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0-%EC%9D%B4%EB%B6%84-%EA%B7%B8%EB%9E%98%ED%94%84Bipartite-Graph%EB%9E%80 [자료구조] 이분 그래프(Bipartite Graph)란 ?이분 그래프의 개념이분 그래프(Bipartite Graph)는 정점을 두 개의 집합으로 나눌 수 있고, 같은 집합에 속한 정점끼리는 간선이 연결되지 않는 그래프입니다. 즉, 모든 간선이 한 집합의 정점에서1chanhue1.tistory.comhttps://1chanhue1.tistory.com/entry/%ED%95%B5%EC%8B%AC%EB%A7%8C-%EA%B3%A8%EB%9D%BC-%EB.. 2025. 5. 8.
핵심만 골라 배우는 젯팩 컴포즈 (chapter 18 ~20) 컴포즈 개요컴포즈는 앱 개발에 관한 완전히 새로운 접근 방식.컴포즈는 선언적인 동시에 데이터 주도적.컴포즈의 선언적 구문프로그래머가 선언만 하면 레이아웃 배치, 제한, 렌더링 방법에 관한 모든 복잡한 세부 사항은 컴포즈가 자동으로 처리.컴포즈의 선언은 계층적으로 구조화되어 있기 때문에, 재사용 가능한 서브 뷰를 조합함으로써 복잡한 뷰를 쉽게 만들 수 있음.명령형 프로그래밍 패러다임 (기존 안드로이드 XML + Java/Kotlin)기존의 명령형 패러다임은 트리형태로 뷰를 구성. 레이아웃 위에 텍스트 뷰, 버튼 등을 쌓아 뷰를 그림.UI를 업데이트 하기 위해 일반적으로 findViewById() 같은 함수로 트리를 탐색해 내부 상태를 변경함.xml을 inflating 하여 객체를 만들어 사용, 위젯들은 내.. 2025. 5. 8.
[자료구조] 이분 그래프(Bipartite Graph)란 ? 이분 그래프의 개념이분 그래프(Bipartite Graph)는 정점을 두 개의 집합으로 나눌 수 있고, 같은 집합에 속한 정점끼리는 간선이 연결되지 않는 그래프입니다. 즉, 모든 간선이 한 집합의 정점에서 다른 집합의 정점으로만 연결됩니다이분 그래프의 특징- 이분 그래프인지 확인하는 방법은 BFS, DFS 탐색을 이용하면 된다.- 이분 그래프는 BFS를 할 때 같은 레벨의 정점끼리는 모조건 같은 색으로 칠해진다.- 사이클의 길이가 홀수이면 이분 그래프가 아니다. (예: 3개의 정점으로 이루어진 삼각형(사이클 길이 3)은 이분 그래프가 아니다)- 연결 성분의 개수(Connected Component)를 구하는 방법과 유사하다.- 모든 정점을 방문하며 간선을 검사하기 때문에 시간 복잡도는 O(V+E)로 그래.. 2025. 5. 8.
[백준 1697] 숨바꼭질 with kotlin 문제수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다.수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구하는 프로그램을 작성하시오.입력첫 번째 줄에 수빈이가 있는 위치 N과 동생이 있는 위치 K가 주어진다. N과 K는 정수이다.출력수빈이가 동생을 찾는 가장 빠른 시간을 출력한다.package com.chanhue.algorithm.백준.실버import jav.. 2025. 5. 4.