일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- css기초
- 백준알고리즘
- 프로그래머스
- HTML
- js코테
- 리액트댓글기능
- HTML5
- 백준구현
- 익스프레스
- 백준nodejs
- 프로그래머스JS
- 백준
- 몽고DB
- JS
- 포이마웹
- 리액트
- 자바스크립트
- dp알고리즘
- 백준골드
- 코딩테스트
- 알고리즘
- 백준js
- 코테
- 다이나믹프로그래밍
- JS프로그래머스
- 프로그래머스코테
- 리액트커뮤니티
- CSS
- 백준구현문제
- 안드로이드 스튜디오
- Today
- Total
목록전체 글 (453)
개발새발 로그
크루스칼 알고리즘 (Kruskal Algorithm) 이란 그래프 내의 모든 정점들을 가장 적은 비용(cost)으로 연결하기 위해 사용되는 알고리즘이다. 즉 최소 비용 신장트리를 만들기 위한 대표적인 알고리즘이다. 예를 들어 각 도시를 도로를 이용해 연결해 모든 도시가 연결되도록 할 때 최소한의 비용을 구하는 것이다. 먼저 신장트리에 대해 알아보자 신장 트리 (Spanning Tree) 이러한 그래프가 있다고 가정하자 이 그래프를 연결하는 최소 연결부분만 사용한다면 아래와 같이 나온다. 더 많은 경우가 있지만 생략했다. 최소 연결이란 간선의 수가 가장 적다는 것을 의미한다. 그래프에서 일부 간선을 선택해서 만든 트리. 모든 정점들이 연결 되어 있어야하고 사이클을 포함하면 안된다. 하나의 그래프에는 여러개..
서로소 집합이란 공통 원소가 없는 두 집합을 의미한다. 서로소 집합 자료구조란 서로소 부분 집합들로 나누어진 원소들의 데이터를 처리하기 위한 자료구조 서로소 집합 자료구조는 합집합(union)과 찾기(find) 연산으로 구성 쉽게보면 현재 연결되지않은 노드들이 있는 것이다. 그래서 공통된원소가 없어 서로 합쳐야하는 것이다. 그림을 보면 현재 부모값과 노드값이 똑같다. 이제 이걸 {1 , 2} 두 원소를 합칠 것이다. 합치게되면 1 의 parent값 1과 2의 parent값 2를 같게해서 연결되게 할것이다. -> 부모 값이 같음으로써 서로 연결되어 합쳐 졌다는 의미가 된다. 즉 위와같은 경우가 되는것이다. 2의 부모값을 1로 바꿔준다. -> 바꿔줄 때 부모 값이 작은 쪽이 부모가 되도록 해야한다. 이제 합..
누적합은 구간의 누적합을 구하는 문제 일반적으로 사용되는 배열에 값을 저장하고 지정된 인덱스부터 하나씩 더해가는 방식은 최악의 경우O(n^2)의 시간복잡도를 갖기 때문에 입력의범위가 클 때 사용할 수 없습니다. 하지만 Prefix sum방식을 사용하면 O(N)으로 해결 할 수 있습니다 수열이 주어지고 어떤 구간의 값의 합을 구해야 할 때 사용한다.
오늘은 서비스에 대해 알아보겠습니다. 서비스의 생명주기 화면이 종료되어도 계속되는 음악 서비스 만들기 MainActivity package com.example.myapplication; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends AppCompatActivity { Intent intent; Button btnStart,btnStop; @Override protected void onCreate(Bun..
오늘은 뷰 컨테이너의 종류들을 알아보겠습니다. 스크롤 뷰(ScrollView) 수직(위아래)으로 스크롤하는 기능 수평(좌우)으로 스크롤하는 수평 스크롤 뷰(HorizontalScrollView)는 따로 있음 주의 : 스크롤 뷰에는 단 하나의 위젯만 넣을 수 있음 슬라이딩 드로어(SlidingDrawer) 위젯들을 서랍처럼 열어서 보여주거나 닫아서 감춤 규칙 슬라이딩 드로어의 handle 이름과 슬라이딩 드로어의 손잡이 역할을 하는 버튼 id가 동일해야 함 슬라이딩 드로어의 content 이름과 리니어 레이아웃의 id가 동일해야 함 뷰 플리퍼(ViewFlipper) 안에 여러 개의 위젯을 배치한 후, 필요에 따라서 화면을 왼쪽과 오른쪽으로 밀어서 하나의 위젯씩 화면에 보여주는 방식의 뷰 컨테이너 packa..
오늘은 안드로이드 스튜디오를 사용하면서 나오는 오류들을 알아보겠습니다! 현재 제가 안드로이드를 사용하면서 많은 오류들을 봤는데... 이걸 따로 한 번에 정리하고 싶어서 적게 됐습니다. 지금은 캡처해서 정리해놓은 오류가 별로 없지만 안드로이드 스튜디오를 자주 사용하면서 자주 발견되는 오류들을 적어 놓겠습니다! 안드로이드 스튜디오 12 오류 이 오류는 Android 12부터 명시적으로 적용하지 않으면 생기는 오류입니다, 이 오류는 안드로이드를 업데이트하면서 기존에 있던 파일들을 컴파일했을 때 생기는 오류입니다. 해결방법은 아래와 같은 방법으로 해결 가능합니다.
오늘은 저번에 배운 고급 위젯들을 가지고 간단한 앱을 만들어 보겠습니다. 날짜/시간 예약앱 예약 시작을 누르면 타이머가 실행되며 예약 완료를 누르면 해당 타이머가 멈춘다 날짜 설정 라디오 버튼을 누르면 캘린더가 나와 날짜를 클릭 가능하고, 시간 설정 라디오 버튼을 클릭하면 시간 설정이 가능하다. 예약 완료를 누르게 되면 타이머가 종료되며 걸린 시간이 표시되고 하단에 예약한 날짜와 시간이 출력된다. 화면 디자인 코드 자바 코드 package org.techtown.tistory_widget; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import android.graphics.Color; impor..