| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 29 | 30 |
- python #7490 #백준 #알고리즘 #BFS
- 프로그래머스
- Python
- 1766
- Heap
- 1697
- 라이징프로그래머2 #Android #안드로이드 #Quitter #MakeUs
- 알고리즘
- 최소힙
- 파이팅
- AOS
- 1759
- 디자인패턴
- MVC
- Algorithm
- 백준
- 1715
- 안드로이드
- level3
- 파이썬
- 2941
- 올바른 괄호
- REST API
- BFS
- deque
- 해커랭크
- 12865
- 1302
- CS
- 백준 #알고리즘 # Algorithm #파이썬
목록전체 글 (29)
Liam 일지
옵저버 패턴이란 옵저버 패턴은 객체의 상태 변화를 관찰하는 관찰자들, 즉 옵저버들의 목록을 객체에 등록하여 상태 변화가 있을 때마다 메서드 등을 통해 객체가 직접 목록의 각 옵저버에게 통지하도록 하는 디자인 패턴 한 객체의 상태 변화에 따라 다른 객체의 상태도 연동되도록 **일대다 객체 의존 관계를 구성**하는 패턴 데이터의 변경이 발생했을 경우 **상대 클래스나 객체에 의존하지 않으면서 데이터 변경을 통보하고자 할 때** 유용하다. ex) 새로운 파일이 추가되거나 기존 파일이 삭제되었을 때 탐색기는 다른 탐색기에게 즉시 변경을 통보해야한다. 옵저버 패턴은 통보 대상 객체의 관리를 Subject 클래스와 Observer 인터페이스로 일반화한다. 이를 통해 데이터 변경을 통보하는 클래스(ConcreteSu..
안드로이드의 4대 컴포넌트란? 안드로이드의 주요 4대 컴포넌트는 액티비티(Activity), 서비스(Service), 브로드캐스트 리시버(Broadcase Receiver), 콘텐츠 프로바이더(Content Provider)를 말합니다. 각 컴포넌트들은 하나의 독립된 형태로 존재하며, 정해진 역할을 수행합니다. 또한 각 컴포넌트들은 인텐트(Intent)라는 일종의 메시지 객체를 사용하여 상호 통신을 합니다. 액티비티(Activity) 액티비티는 UI화면을 담당하는 컴포넌트입니다. 안드로이드 애플리케이션은 반드시 하나의 액티비티를 가지고 있어야합니다. 각 액티비티는 매니페스트파일에 등록되어있어야 합니다. 액티비티는 하나 이상의 view를 가질 수 있습니다. 서비스(Service) 서비스는 백그라운드에서 실..
문제 설명 앞뒤를 뒤집어도 똑같은 문자열을 팰린드롬(palindrome)이라고 합니다. 문자열 s가 주어질 때, s의 부분문자열(Substring)중 가장 긴 팰린드롬의 길이를 return 하는 solution 함수를 완성해 주세요. 예를들면, 문자열 s가 "abcdcba"이면 7을 return하고 "abacde"이면 3을 return합니다. 제한사항 문자열 s의 길이 : 2,500 이하의 자연수 문자열 s는 알파벳 소문자로만 구성 def palindrome(string): if len(string)=len(s): break return answer 처음 코드는 재귀를 통해서 가장 긴 문자열에서 순차적으로 길이를 줄여가며 palindrome을 검사했습니다. 하지만 이럴경우 정확도는 전부 통과가 되지만 효..
그림 성공분류 시간 제한메모리 제한제출정답맞은 사람정답 비율 2 초 128 MB 7594 3370 2385 43.269% 문제 어떤 큰 도화지에 그림이 그려져 있을 때, 그 그림의 개수와, 그 그림 중 넓이가 가장 넓은 것의 넓이를 출력하여라. 단, 그림이라는 것은 1로 연결된 것을 한 그림이라고 정의하자. 가로나 세로로 연결된 것은 연결이 된 것이고 대각선으로 연결이 된 것은 떨어진 그림이다. 그림의 넓이란 그림에 포함된 1의 개수이다. 입력 첫째 줄에 도화지의 세로 크기 n(1 ≤ n ≤ 500)과 가로 크기 m(1 ≤ m ≤ 500)이 차례로 주어진다. 두 번째 줄부터 n+1 줄 까지 그림의 정보가 주어진다. (단 그림의 정보는 0과 1이 공백을 두고 주어지며, 0은 색칠이 안된 부분, 1은 색칠이..
RestAPI(RESTful API)란 REST아키텍처의 제약 조건을 준수하는 애플리케이션 프로그래밍 인터페이스이다. 전반적인 이해를 위해 REST와 RESTful의 개념에 대해서 설명하겠습니다. REST란 **REST의 정의** "Representational State Transfer"의 약자 월드 와이드 웹(www)과 같은 분산 하이퍼미디어 시스템을 위한 소프트웨어 개발 아키텍처의 한 형식 REST는 기본적으로 웹의 기존 기술과 HTTP 프로토콜을 그대로 활용하기 때문에 웹의 장점을 최대한 활용할 수 있는 아키텍처 스타일이다. REST는 네트워크 상에서 Client와 Server 사이의 통신 방식 중 하나이다. REST의 구체적인 개념 HTTP URI(Uniform Resource Identifie..
문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다. def solution(s): check_s={ ')':'(', '}':'{', ']':'[' } stack=[] for i in s..
MVVM패턴 MVVM패턴이란 Model, View, ViewModel의 줄임말입니다. 하나의 소프트웨어를 최대한 기능적으로 작은 단위로 나누어 테스트가 쉽고 큰 프로젝트도 상대적으로 관리하기가 좋은 구조입니다. 아래의 그림을 바탕으로 설명하면 모든 Input은 View로 전달되며 ViewModel은 입력에 해당하는 Presentation Logic을 처리하고 View에 데이터를 전달합니다. ViewModel은 View를 따로 참조하지 않기 때문에 독립적이며 1:n의 관계를 가집니다. 따라서 View는 자신이 이용할 ViewModel을 선택해 데이터를 바인딩하여 업데이트를 받게됩니다. 그 후 Model이 상태 및 데이터가 변경되면 해당하는 ViewModel을 이용하는 View가 자동으로 업데이트됩니다. V..
MVP패턴 MVP 패턴은 Model과 VIew가 상호 의존적인 MVC 패턴의 단점을 보완하기 위해 MVC 패턴에서 파생되어 나온 패턴이며, Model, View, Presenter를 거쳐 상호 동작할 수 있다는 것이 특징이다. 핵심은 MVC와는 다르게 UI(View)와 비즈니스 로직(Model)을 분리하고, 서로 간에 상호작용을 다른 객체(Presenter)에 그 역할을 줌으로 써 서로의 영향(의존성)을 최소화 하는것에 있습니다. MVP의 특징 Model 프로그램 내부적으로 쓰이는 데이터를 저장하고, 처리하는 역할을 한다. VIew 또는 Presenter 등 다른 어떤 요소에도 의존적이지 않은 독립적인 영역이다. View UI를 담당하며 안드로이드에서는 Activity, Fragment가 대표적인 예. ..