![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/P36QJ/btreLgWgANn/9UP4guGMzd2dVyMEqUqnlk/img.png)
https://www.acmicpc.net/problem/16938 16938번: 캠프 준비 난이도가 10, 30인 문제를 고르거나, 20, 30인 문제를 고르면 된다. www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 수학 브루트포스 알고리즘 조합론 백트래킹 ⊙ 문제 접근 과정 값을 입력받고 2개 이상부터 N개까지 조합을 해준다. 그리고 L
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/HPX3Q/btreJhopdaR/AZALgvQi2bfIbl5usIP2sk/img.png)
프로토타입 프로토타입이란 간단히 말해 상속을 구현하는 방식이다. 모든 객체에는 하나의 프로토타입이 존재하며, 이는 모두 생성자 함수와 연결되어 있다. 프로토타입에 대해 부가설명을 하자면 자바스크립트에서 프로토타입 개념은 프로토타입 객체와 프로토타입 링크를 통틀어 말하고 객체 간 상속을 구현하기 위해 사용된다. ❓ 상속이란 무엇일까? 상속은 객체지향 프로그래밍의 핵심 개념으로, 어떤 객체의 프로퍼티 또는 메서드를 다른 객체가 상속받아 그대로 사용할 수 있는 것을 말한다. 💨 상속을 사용하는 이유 - 상속을 사용하면 기존에 있던 코드를 그대로 사용할 수 있기에 코드의 중복을 피할 수 있다. - 그렇다는 뜻은 상속을 사용하면 코드의 양이 현저히 줄어든다. 자바스크립트는 프로토타입을 기반으로 상속을 구현한다 프..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/u1ATI/btreOs9husc/0vSwqX6lPcqcjMYpjulShk/img.png)
일급 객체 무명의 리터럴로 생성할 수 있다. 변수나 자료구조에 저장할 수 있다. 함수의 매개변수에 전달할 수 있다. 함수의 반환 값으로 사용할 수 있다. 위 4개의 조건을 모두 만족하면 일급 객체라 한다. // 함수는 무명의 리터럴로 생성할 수 있다. //변수에 저장 가능 const increase = function (num) { return ++num; } const decrease = function (num) { return --num; } // 함수는 객체에 저장 가능 const predicates = { increase, decrease }; // 함수의 매개변수로 전달 가능 // 함수의 반환값으로 사용 가능 function makeCounter(predicate) { let num = 0; ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/vvGbk/btreJiU52Ir/7ShrckLL8H3Abyu2sDAkfk/img.png)
생성자 함수 객체 리터럴에 의한 생성 방식은 직관적이고 간편하다. 하지만 단 하나만의 객체만을 생성해 여러 개를 생성해야 할 경우에는 비효율적이다. 그렇지만 생성자 함수에 의한 객체 생성 방식은 프로퍼티 구조가 동일한 객체 여러 개를 간편하게 생성할 수 있다. 🔍 객체 리터럴에 의한 객체 생성 const circle1 = { radius: 5, getDiameter() { return 2 * this.radius; } }; console.log(circle1.getDiameter()); // 10 const circle2 = { radius: 10, getDiameter() { return 2 * this.radius; } }; console.log(circle2.getDiameter()); // 20 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/pqrc9/btreI8kvm2f/bMOqWX3Spvfa3ndtqkNcTK/img.png)
프로퍼티 어트리뷰트 자바스크립트 엔진은 프로퍼티를 생성할 때 프로퍼티의 상태를 나타내는 프로퍼티 어트리뷰트를 기본값으로 자동 정의한다. 프로퍼티 데이터 프로퍼티 키와 값으로 구성된 일반적인 프로퍼티 접근자 프로퍼티 자체적으로는 값을 갖지 않고 다른 데이터 프로퍼티의 값을 읽거나 저장할 때 호출되는 접근자 함수로 구성된 프로퍼티 *프로토타입 : 어떤 객체의 상위(부모) 객체의 역할을 하는 객체 🎈 프로퍼티 정의 프로퍼티의 어트리뷰트를 명시적으로 정의하거나, 재정의하는 것을 의미한다. 🎈 객체 변경 방지 객체는 변경 가능한 값이다. 자바스크립트는 객체의 변경을 방지하는 다양한 메서드를 제공한다. 🔔객체 확장 금지🔔 확장이 금지된 객체는 프로퍼티 추가가 금지된다. 🔔객체 밀봉🔔 밀봉된 객체는 읽기와 쓰기만 가..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bT1ONG/btreKlwBrB8/o9w37X7bhwQ0LhEuszK6n1/img.png)
https://programmers.co.kr/learn/courses/30/lessons/84512 코딩테스트 연습 - 5주차_모음사전 사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니 programmers.co.kr ⊙ 문제 ⊙ 제한사항 ⊙ 입출력 예 ⊙ 입출력 예 설명 ⊙ 문제 접근 과정 사전으로 설정하고 각 위치에 대한 값을 때려 박았다. 해당 위치의 값만 더해서 출력해주면 된다. ⊙ 문제 풀이 def solution(word): answer=0 vowel = {} vowel['A'] = [1,1,1,1,1] vowe..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/qQkb6/btreJxjE06m/rB1VG4O3plxG2RQM4LrHiK/img.png)
연습문제 1. 소스코드를 한 번에 번역하지 않고 한 행씩 번역하여 실행하는 방식을 무엇이라 하는가? 인터프리터 방식 2. 프로그래머가 C나 자바로 소스코드를 작성하여 컴파일하면 일차적으로 만들어지는 코드는 무엇인가? 목적 코드 3. 컴파일할 때 코드에 라이브러리를 연결하지 않고 코드를 실행할 때 라이브러리를 가져와 실행하는 방식을 무엇이라 하는가? 동적 라이브러리 4. 메모리 관리 정책 중 메모리가 꽉 찼을 때 메모리에 있는 어떤 프로세스를 내보낼지 결정하는 것은 무엇인가? 재배치 5. 32bit CPU를 사용하는 컴퓨터가 가질 수 있는 물리 메모리의 최대 크기는 얼마인가? 4GB 6. 절대 주소는 실제 물리 주소로, 메모리 관리자 입장에서 바라본 주소이다. 절대 주소와 관계없이 사용자 입장에서 항상 0..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ci3TFE/btreJP5oQJU/A5XpduskdpELoL98qLo9j1/img.png)
메모리 관리 운영체제를 포함한 여러 프로그램이 메모리 위에 올라와 실행된다. 따라서 메모리 관리가 복잡한데 이처럼 복잡한 메모리 관리는 메모리 관리 시스템(MMS)이 담당한다. 메모리 관리가 이루어지다 보면 프로세스 입장에서 작업의 편리함과 관리자 입장에서 관리의 편리함이 충돌할 때가 발생한다. 이를 메모리 관리의 이중성이라 한다. 메모리 관리자 역할 메모리 관리는 메모리 관리자가 담당한다. 가져오기 배치 재배치 메모리 주소 메모리에 접근할 때는 주소를 이용한다. 절대 주소 - 실제 물리 주소 - 메모리 관리자 입장에서 바라본 주소 - 메모리 주소 레지스터가 사용하는 주소 상대 주소 - 운영체제가 관리하는 주소 - 사용자 프로세스 입장에서 바라본 주소 - 절대 주소와 상관없이 항상 0번지부터 시작 상대 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/osEtJ/btreh2kHRy5/GTAyGyoaJgk8kiiCdQ6ky1/img.png)
https://www.acmicpc.net/problem/9935 9935번: 문자열 폭발 첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 자료 구조 문자열 스택 ⊙ 문제 접근 과정 입력 문자열과 폭발 문자열을 입력받는다. 입력 문자열을 차례대로 검사한 후 stack에 넣는다. 검사할 때, 현재 글자가 폭발 문자열의 마지막 글자와 일치하면 그 앞의 문자들도 일치하는지 확인한다. 만약 같을 시, pop 반복.... 마지막에 stack에 값이 있는지 없는지 확인하..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bdrX2d/btrehA8wltv/wfp81s6DfuwIdmttGjqYi1/img.png)
https://www.acmicpc.net/problem/2504 2504번: 괄호의 값 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다. 한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다. 만일 www.acmicpc.net ⊙ 문제 ⊙ 입력 ⊙ 출력 ⊙ 예제 입출력 ⊙ 알고리즘 분류 구현 자료 구조 스택 재귀 ⊙ 문제 접근 과정 제일 먼저 스택을 생각하며 괄호를 구현해준다. 괄호가 올바르게 들어왔는지 코드를 작성해준 후, 계산을 구현해준다. ()일 때, 곱하기 2 []일 때, 곱하기 3 그리고 더하기의 경우를 구현해준다. 이전 괄호가 어떤 괄호인지 체킹 해주면 된다. 자세한 건 아래 코드를 통해 확인하자 ⊙ 문제 ..
- Total
- Today
- Yesterday
- 파이썬
- 자바
- 문자열
- 우종정
- 알고리즘
- Python
- 쉽게배우는
- BFS
- 정렬
- 풀이
- 프로그래머스
- 연습문제
- 자바스크립트
- Web
- 정리
- java
- OS
- CPP
- 답
- 쉽게배우는자바프로그래밍
- JS
- 운영체제
- 정답
- 쉽게 배우는 자바 프로그래밍
- 백준
- py
- 그리디
- 해답
- 구현
- C++
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |