[Java Algorithm] 프로그래머스 Lv.0 _ 등차수열의 특정한 항만 더하기
·
Algorithm Study
[문제]두 정수 a, d 와 길이가 n인 boolean 배열 included가 주어집니다. 첫째항이 a, 공차가 d인 등차수열에서 Included[i]가 i + 1 항을 의미할 때, 이 등차수열의 1항부터 n항까지 included가 true인 항들만 더한 값을 return 하는 solution 함수를 작성해주세요. [Algorithm]반복문에서 조건문을 사용하여 배열의 해당 인덱스가 true 경우의 등차수열 해당 항을 계산해서 더해주기 [Code]class Solution { public int solution(int a, int d, boolean[] included) { int answer = 0; for(int i=0; i [+ 다른 사람 풀이]impor..
[Java Algorithm] 프로그래머스 Lv.0 _ 코드 처리하기
·
Algorithm Study
[문제]문자열 code 가 주어집니다.code를 앞에서부터 읽으면서 만약 문자가 "1"이면 mode를 바꿉니다. mode에 따라 code를 읽어가면서 문자열 ret을 만들어냅니다. mode는 0과 1이 있으며, idx를 0부터 code의 길이 - 1까지 1씩 키워나가면서 code[idx]의 값에 따라 다음과 같이 행동합니다.1. mode가 0일 때- code[idx]가 "1"이 아니면 idx가 짝수일 때만 ret의 맨 뒤에 code[idx]를 추가합니다.- code[idx]가 "1"이면 mode를 0에서 1로 바꿉니다.2. mode가 1일 때- code[idx]가 "1"이 아니면 idx가 홀수일 때만 ret의 맨 뒤에 code[idx]를 추가합니다.- code[idx]가 "1"이면 mode를 1에서 0으..
[개념정리] 관계대수 연산자
·
정보처리기사[실기]
일반 집합 연산자합집합∪R∪S합병 가능한 두 릴레이션 R과 S의 합집합교집합∩R∩S릴레이션 R과 S에 속하는 모든 튜플로 결과 릴레이션 구성차집합-R-SR에 존재하고 S에 존재하지 않는 튜플로 결과 릴레이션 구성카디션프로덕트XRxSR과 S에 속한 모든 튜플을 연결해 만들어진 새로운 튜플로 릴레이션 구성  순수 관계 연산자셀렉트σσ조건(R)릴레이션 R에서 조건을 만족하는 튜플 반환프로젝트ππ속성리스트(R)릴레이션 R에서 주어진 속성들의 값으로만 구성된 튜플 반환조인▷◁R▷◁S공통 속성을 이용해 R과 S의 튜플들을 연결해 만들어진 튜플 반환디비전÷R÷S릴레이션 S의 모든 튜플과 관련있는 R의 튜플 반환
[개념정리] 객체지향 설계 원칙(SOLID)
·
정보처리기사[실기]
💡SOLID 원칙단일 책임의 원칙SRP (Single Presponsibility Principle)하나의 클래스는 하나의 목적을 위해서 생성되며, 클래스가 제공하는 모든 서비스는 하나의 책임을 수행하는데 집증되어 있어야 한다는 원칙객체 지향 프로그래밍 5원칙 중 나머지 4원칙의 기초 원칙이다.개방 폐쇄 원칙OCP (Open Close Principle)소프트웨어의 구성요소(컴포넌트, 클래스, 모듈, 함수)는확장에는 열려있고, 변경에는 닫혀있어야 한다는 원칙리스코프 치환의 원칙LSP (Liskov Substitution Principle)서브 타입(상속받은 하위 클래스)은 어디서나 자신의 기반 타입(상위 클래스)으로 교체할 수 있어야 한다는 원칙인터페이스 분리의 원칙ISP (Interface Segre..
[개념정리] 럼바우 데이터 모델링
·
정보처리기사[실기]
💡 럼바우  ➡️ 객 동 기  객체 모델링Object정보 모델링(information)이라고도 한다.시스템에서 요구하는 객체를 찾고 객체들 간의 관계를 정의하여 ER 다이어그램을 만드는 과정까지의 모델링객체 다이어그램을 활용하여 표현동적 모델링Dynamic시간의 흐름에 따라 객체들 사이의 제어 흐름, 동작 순서 등의 동적인 행위를 표현하는 모델링상태 다이어그램을 활용하여 표현기능 모델링Functional프로세스들의 자료 흐름을 중심으로 처리 과정을 표현하는 모델링자료흐름도(DFD)를 활용하여 표현
[개념정리] 결합도와 응집도
·
정보처리기사[실기]
💡 결합도내용 결합도Content Coupling다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용하는 경우의 결합도➡️ 가장 높음➡️ 가장 낮음공통 결합도Common Coupling파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역 변수를 갱신하는 식으로 상호작용을 하는 경우의 결합도외부 결합도External Coupling두 개의 모듈이 외부에서 도입된 데이터 포맷, 통신 프로토콜 또는 디바이스 인터페이스를 공유할 경우 결합도제어 결합도Control Coupling어떤 모듈이 다른 모듈의 내부 논리 조직을 제어하기 위한 목적으로 제어 신호를 이용하여 통신하는 경우의 결합도 권리 전도 현상이 발생하는 결합도스탬프 결합도Stamp Coupling모듈 간의 인터페이스로 배열이나 객체..
[개념정리] 디자인 패턴 (keyword 암기)
·
정보처리기사[실기]
💡 디자인 패턴이란?객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들에 대해 재사용할 수 있도록 만들어놓은 패턴 모음 ✔️ 생성패턴→ 객체의 인스턴스 생성에 관여하고 클래스 정의와 객체 생성 방식을 구조화, 캡슐화하는 패턴 Abrtract Factory추상 팩토리Builder빌더Factory Method팩토리 메서드Prototype프로토타입Singleton싱글톤구체적인 클래스 의존 X조립상위 클래스에서 객체 생성하위 클래스에서 인스턴스 생성원형 복사(클론)하나의 객체만 생성  ✔️ 구조패턴→ 구조가 복잡한 시스템을 개발바하기 쉽도록 클래스나 객체들을 조합하여 더 큰 구조로 만드는 패턴Adapter어댑터Bridge브릿지Composite컴포지트Decorator데코레이터Facade퍼싸드Flyweigh..
[6과목_프로그래밍 언어 활용] Python 예상 문제(수제비 카페)
·
정보처리기사[실기]
a, b = 10, 15print("{a} {b} {a+b}")print(f"{a} {b} {a+b}")print("{a} {b}".format(a=15, b=10))더보기정답{a} {b} {a+b}10 15 2515 10