분류 전체보기
-
[디자인 패턴] SOLID 의 Interface Segregation Principle알고리즘/디자인 패턴(Design Patterns) 2022. 12. 13. 20:03
디자인 패턴에 대한 정리 내용 중 SOLID 원칙의 네 번째 원칙인 Interface Segregation Principle 즉, 인터페이스 분리 원칙에 대하여 적어보겠습니다. SOLID 설계 원칙은 유지 보수가 쉽고 재사용 가능하도록 하고, 확장 가능한 개발을 위해 지켜지고 있습니다. 저의 네 번째 디자인 패턴 글에서는 C ++의 인터페이스 분리 원칙과 이를 사용하였을 때, 장점 등을 보겠습니다. 이 글 시리즈에서는 총 SOLID의 5가지 원칙에 대해 살펴보겠습니다. SRP - Single Responsibility Principle OCP - Open/Closed Principle LSP - Liskov Substitution Principle ISP - Interface Segregation Pri..
-
[C++] Priority_Queue, Set, Map 의 정렬 Custom 하기 - with. lambda카테고리 없음 2022. 12. 9. 21:05
안녕하세요. 이번 글의 주제는 Map과 Set 그리고 Priority_Queue 등 C++에서 자주 쓰이는 자료구조의 정렬 기준을 커스텀하는 방법에 대해서 알아보겠습니다. 우선 Priority_Queue에 대해서 설명을 드리겠습니다. 방법 1 auto comp = [](int x, int y) { return x < y; }; 다음과 같은 비교함수를 사용해서, set의 비교 함수로 넣어주겠습니다. 그럼 람다 함수를 set 의 템플릿 인자로 넣기 전에, Functional의 function 객체를 사용해서 한번 wrapping 해주었습니다. // 1. funciontal 객체로 람다함수를 감싸 넣어주기. auto Custom1 = set(comp); Custom1.insert({1, 2, 3, 4, 5, ..
-
[프로그래머스] 몸짱 트레이너 라이언의 고민 / c++알고리즘/프로그래머스(PRPGRAMMERS) 2022. 12. 7. 01:40
몸짱 트레이너 라이언의 고민 헬스장에서 일하는 몸짱 트레이너 라이언은 최근 손님들에게 불평을 많이 들었다. 그것은 옷을 갈아입는데 다른 사람과 너무 가까워서 옷을 갈아입기가 불편하다는 것이었다. 불만을 해결하기 위해 고민하던 라이언은 손님들의 예약시간을 참고해서 되도록이면 서로 멀리 떨어지도록 키를 나눠주기로 마음먹었다. 예를 들어, 락커들이 3x3 정사각형 모양으로 배치되어있고, 동시간대에 2명의 손님이 예약되어있다면 아래와 같이 락커를 할당하는 것을 고려해볼 수 있다. 라이언이 일하는 헬스장은 아래와 같은 상황이라고 가정하자. 락커는 정사각형으로 배치되어있고, 락커 사이에 옷을 갈아입을 공간이 있다. 단, 이 공간은 계산에서 제외된다. 락커 간 거리는 상하좌우는 1로, 대각선은 2로 계산한다. 손님들..
-
[디자인 패턴] SOLID 의 Liskov Substitution Principle알고리즘/디자인 패턴(Design Patterns) 2022. 12. 2. 18:49
디자인 패턴에 대한 정리 내용 중 SOLID 원칙의 세 번째 원칙인 Liskov Substitution Principle 즉, 리스코프 치환 원칙에 대하여 적어보겠습니다. SOLID 설계 원칙은 유지 보수가 쉽고 재사용 가능하도록 하고, 확장 가능한 개발을 위해 지켜지고 있습니다. 제 세 번째 디자인 패턴 글에서는 C ++의 리스코프 치환 원칙과 이를 사용하였을 때, 장점 등을 보겠습니다. 이 글 시리즈에서는 총 SOLID의 5가지 원칙에 대해 살펴보겠습니다. SRP - Single Responsibility Principle OCP - Open/Closed Principle LSP - Liskov Substitution Principle ISP - Interface Segregation Principl..
-
[디자인 패턴] SOLID 의 Open Closed Principle알고리즘/디자인 패턴(Design Patterns) 2022. 11. 30. 17:26
디자인 패턴에 대한 정리 내용 중 SOLID 원칙의 두 번째 원칙인 Open Closed Principle 즉, 개방 폐쇄 원칙에 대하여 적어보겠습니다. SOLID 설계 원칙은 유지 보수가 쉽고 재사용 가능하도록 하고, 확장 가능한 개발을 위해 지켜지고 있습니다. 제 두 번째 디자인 패턴 글에서는 C ++의 계방 폐쇄 원칙과 이를 사용하였을 때, 장점 등을 보겠습니다. 이 글 시리즈에서는 총 SOLID의 5가지 원칙에 대해 살펴보겠습니다. SRP - Single Responsibility Principle OCP - Open/Closed Principle LSP - Liskov Substitution Principle ISP - Interface Segregation Principle DIP - Depe..
-
[디자인 패턴] SOLID 의 Single Responsibility알고리즘/디자인 패턴(Design Patterns) 2022. 11. 30. 01:14
디자인 패턴에 대한 정리 내용 중 SOLID 원칙의 첫 번째 원칙인 Single Responsibility 즉, 단일 책임 원칙에 대해 적어보겠습니다. SOLID 설계 원칙은 유지 보수가 쉽고 재사용 가능하도록 하고, 확장 가능한 개발을 위해 지켜지고 있습니다. 제 첫 번째 디자인 패턴 글에서는 C ++의 단일 책임 원칙과 이를 사용하였을 때, 장점 등을 보겠습니다. 이 글 뒤에서는 총 SOLID의 5가지 원칙에 대해 살펴보겠습니다. SRP - Single Responsibility Principle OCP - Open/Closed Principle LSP - Liskov Substitution Principle ISP - Interface Segregation Principle DIP - Depende..
-
[프로그래머스 DB] IS NULL 답안카테고리 없음 2022. 11. 16. 19:59
1. 경기도에 위치한 식품창고 목록 출력하기 풀이: 더보기 우선 주소에서 경기도로 시작하는 Column을 분리시켜 주어야 하고, 냉동시설 여부가 NULL 일때, 'N' 으로 출력해야 하므로 IFNULL(Nullable,'N') 으로 치환시켜줍니다. 그 다음 ORDER BY 함수로 창고 ID 를 오름차순으로 정렬해줍니다. SELECT WAREHOUSE_ID, WAREHOUSE_NAME, ADDRESS, IFNULL(FREEZER_YN,'N') AS FREEZER_YN FROM FOOD_WAREHOUSE WHERE ADDRESS LIKE '경기도%' ORDER BY WAREHOUSE_ID ASC 2. 이름이 없는 동물의 아이디 풀이: 더보기 NAME 컬럼이 NULL 일때를 조건절로 출력하면 된다. SELEC..
-
[프로그래머스 DB] SUM, MAX, MIN 답안뜯고 또 뜯어보는 컴퓨터/데이터베이스(DataBase) 2022. 11. 16. 19:07
1. 가장 비싼 상품 구하기 풀이 : 더보기 PRODUCT 테이블에서 가장 높은 판매가를 출력하는 SQL 문입니다. 따라서, MAX( ) 키워드를 사용하여 최대값을 나타내었으며, 컬럼명 변경을 위해, AS 사용해주었습니다. SELECT MAX(PRICE) AS MAX_PRICE FROM PRODUCT 2. 가격이 제일 비싼 식품의 정보 출력하기 풀이 : 더보기 우선 가장 비싼 식품의 PRICE를 MAX( ) 를 사용하여 view 테이블로 꺼내온 다음, where 조건절로 PRICE가 일치한 column을 꺼내왔습니다. SELECT * FROM FOOD_PRODUCT WHERE PRICE = (SELECT MAX(PRICE) AS PRICE FROM FOOD_PRODUCT) 3. 최댓값 구하기 풀이 : 더..