728x90
반응형
SMALL

분류 전체보기 67

[프로그래머스] 완주하지 못한 선수 Lv1

문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 풀이 먼저 문제를 처음 봤을 때 for 문을 돌려서 수행해야겠다 생각을 했고, 최소한 ..

코딩 테스트 2024.03.05

레디스(Redis)란 무엇인가?!

Redis 란? Redis는 Remote Dictionary Server의 약자로 빠른 오픈 소스 인 메모리 키 값 데이터 구조 스토어입니다. 키(Key) - 값(Value) 쌍의 해시 맵과 같은 구조를 가진 비관계형(NoSQL) 데이터베이스 관리 시스템(DBMS)이며, 오픈 소스 기반으로 인-메모리(In-memory) 데이터 구조 저장소로 메모리에 데이터를 저장합니다. 모든 데이터를 메모리로 불러와서 처리하는 In-Memory기반의 DBMS로 데이터베이스, 캐시, 메시지 브로커 등으로 사용되어지며, 주로 캐시 서버를 구현할 때 많이 사용됩니다. Redis의 특징 및 장단점 레디스는 다음과 같은 다양한 자료 구조를 지원합니다. (Strings, JSON, Sets, Lists, Sorted set .....

개발지식 2024.03.04

[프로그래머스]KAKAO BLIND RECRUITMENT 실패율 Lv1

문제 설명 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차이가 너무 큰 것이 문제였다. 이 문제를 어떻게 할까 고민 한 그녀는 동적으로 게임 시간을 늘려서 난이도를 조절하기로 했다. 역시 슈퍼 개발자라 대부분의 로직은 쉽게 구현했지만, 실패율을 구하는 부분에서 위기에 빠지고 말았다. 오렐리를 위해 실패율을 구하는 코드를 완성하라. 실패율은 다음과 같이 정의한다. 스테이지에 도달했으나 아직 클리어하지 못한 플레이어의 수 / 스테이지에 도달한 플레이어 수 전체 스테이지의 개수 N, 게임을 이용하는 사용자가 현재 멈춰있는 스테이지의 번호가 담긴 배열 stages가 매개변..

코딩 테스트 2024.03.03

프로토콜(Protocol)이란 무엇인가?

프로토콜(Protocol)이란? 통신 프로토콜 또는 통신 규약은 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계 즉 통신 규약 및 약속입니다. 프로토콜의 기본 요소 구문(Syntax) : 전송하고자 하는 데이터의 형식(Format), 부호화(Coding), 신호 레벨(Signal Level) 등을 규정 의미(Semantics) : 두 기기 간의 효율적이고 정확한 정보 전송을 위한 협조 사항과 오류 관리를 위한 제어 정보를 규정 시간(Timing) : 두 기기 간의 통신 속도, 메시지의 순서 제어 등을 규정 포트 • 한 컴퓨터에서 어느 서버 프로그램과 통신할 것인지 지정해주는 일종의 출입구 • 보통 웹 서버 포트 번호 : HTTP는 80, HTTPS는 443 0번 ~ 1023번:..

개발지식 2024.03.02

프로그래머스) [1차] 비밀지도 Lv1

문제 설명 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. ① 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로 이루어져 있다. ② 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 "지도 1"과 "지도 2"라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공백인 부분은 전체 지도에서도 공백이다. ③ "지도 1"과 "지도 2"는 각각 정수 배열로 암호화되어 있다. ④ 암호화..

코딩 테스트 2024.03.01

[Apache Kafka] 카프카(Kafka) 맛보기!

카프카(Kafka)란?! Apache Kafka는 실시간으로 기록 스트림을 게시, 구독, 저장 및 처리할 수 있는 오픈 소스 분산 이벤트 스트리밍 플랫폼입니다. 여러 소스에서 데이터 스트림을 처리하고 여러 사용자에게 전달하도록 설계되었습니다. 간단히 말해 A지점에서 B지점까지 이동하는 것뿐만 아니라 A지점에서 Z지점을 비롯해 필요한 모든 곳에서 대규모 데이터를 동시에 이동할 수 있습니다. 카프카의 탄생 배경 카프카는 비즈니스 소셜 네트워크 서비스인 링크드인(linked-in)에서 개발했으며 아래는 카프카 개발 전 링크드인의 데이터 처리 시스템입니다. 각 애플리케이션과 DB가 end-to-end 로 연결되어 있고 요구사항이 늘어남에 따라 데이터 시스템 복잡도가 높아지면서 다음과 같은 문제가 발생하게 되었습..

개발지식 2024.02.29

MSA(MicroService Architecture) 란 무엇일까?!

MSA 란 MicroService Architecture의 줄임말로 작고 독립적으로 배포가 가능한 각각의 기능을 수행하는 서비스로 구성된 프레임워크라고 할 수 있습니다. 마이크로 서비스는 완전히 독립적으로 배포가 가능하고, 다른 기술 스택(개발언어, 데이터베이스 등)이 사용 가능한 단일 사업 영역에 초점을 둡니다. MSA의 등장 배경 모놀리식 아키텍처(Monolithic Architecture)는 전통적인 개발 방식으로 하나의 프로젝트에 모든 기능을 함께 포함하는 아키텍처입니다. 소프트웨어의 모든 구성요소가 한 프로젝트에 통합되어있는 형태로 웹 개발을 예로 들면 웹 프로그램을 개발하기 위해 모듈별로 개발을 하고, 개발이 완료된 웹 어플리케이션을 하나의 결과물로 패키징하여 배포되는 형태를 말합니다. 주로 ..

개발지식 2024.02.28

MVC(Model-View-Controller) 패턴의 정의와 처리과정!

MVC 패턴이란 모델-뷰-컨트롤러(model–view–controller, MVC)는 소프트웨어 공학에서 사용되는 소프트웨어 디자인 패턴이다. 이 패턴을 성공적으로 사용하면, 사용자 인터페이스로부터 비즈니스 로직을 분리하여 애플리케이션의 시각적 요소나 그 이면에서 실행되는 비즈니스 로직을 서로 영향 없이 쉽게 고칠 수 있는 애플리케이션을 만들 수 있다. MVC에서 모델은 애플리케이션의 정보(데이터)를 나타내며, 뷰는 텍스트, 체크박스 항목 등과 같은 사용자 인터페이스 요소를 나타내고, 컨트롤러는 데이터와 비즈니스 로직 사이의 상호동작을 관리한다. ● Model Model은 소프트웨어나 애플리케이션에서 정보 및 데이터 부분을 의미합니다. 이는 Controller에게 받은 데이터를 조작(가공)하는 역할을 수..

개발지식 2024.02.27

EAI(Enterprise Application Integration)이란?

EAI란 Enterprise Application Integration 의 약자로 기업과 기업 내부의 다양한 시스템과 애플리케이션 간에 상호 연동이 가능하도록 통합하는 솔루션을 말합니다. 한 기업 내의 ERP(전사적자원관리), CRM(고객관계관리), SCP(공급망계획) 시스템이나 인트라넷 등의 시스템 간에는 서로 데이터를 주고 받아야할 상황이 생깁니다. 데이터를 주고받기 위해 각 시스템 간에 개별적으로 서로 통신을 한다면 시스템 간에 개별적인 연결이 상당히 많이 생성되면서 유지보수의 어려움이 발생하고 운영체제가 다르다거나 하는 이유로 시스템 간 통신을 위해 시스템을 고쳐야 하는 상황이 발생할 수 있습니다. 이러한 문제점을 해결하기 위해 EAI 라는 솔루션을 적용하고 있습니다. 위 그림처럼 각 시스템은 E..

개발지식 2024.02.24
728x90
반응형
LIST