일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 엑셀
- 입/출력
- 프레임워크와 라이브러리의 차이
- 장고란
- 백준
- 2557
- Django Nodejs 차이점
- 매크로
- 구조체와 클래스의 공통점 및 차이점
- correlation coefficient
- k-eta
- c++
- 시간복잡도
- string 메소드
- Django란
- 알고리즘 공부방법
- 연결요소
- 입출력 패턴
- scanf
- string 함수
- 이분그래프
- double ended queue
- getline
- UI한글변경
- iOS14
- 표준 입출력
- 자료구조
- vscode
- Django의 편의성
- EOF
- Today
- Total
목록알고리즘/알고리즘 기초(코드플러스) (45)
Storage Gonie
문자열 # 문자열 - 문자열은 아스키코드로 저장이 됨. # 아스키코드 - 문자 인코딩 방법 - 문자를 출력해보면 되므로 외울필요가 없다. - 숫자랑 글자랑 매치되는 테이블이 있어서, 저장할 때 숫자로 저장했다가 출력은 글자로 해주는 것으로 이해하면 됨. @ 예시 - '0' => ASCII코드값 : 48 - 'A' => ASCII코드값 : 65 - 'a' => ASCII코드값 : 97 - ASCII코드값 : 48 => '0' - ASCII코드값 : 0 => NULL printf("%c\n", 65); // 문자 'A'가 출력됨. printf("%c\n", 48); // 문자 '0'이 출력됨. # 알파벳 개수 문제 - https://www.acmicpc.net/problem/10808 # 알파벳 찾기 문제 ..
덱의 개념 # 덱이란 - Deque, Double-ended queue의 약자이다. - 양 끝에서만 자료를 넣고 양 끝에서 뺄 수 있는 자료구조 - 큐는 push, pop을 할 수 있는 위치가 한 방향으로 고정되어 있지만, 덱은 앞에서도 push, pop, 뒤에서도 push, pop이 모두 가능하다. - 중요한 자료구조는 맞지만, 덱의 특징을 이용해서 문제를 푸는 경우는 많지 않음. # 직접 구현하기 위해 필요한 요소 - 앞, 뒤에서 삭제 추가 연산이 일어나기 때문에 보통 이중 연결리스트로 구현한다고 함 # 덱의 연산 - push_front() : 덱의 앞에 자료를 넣는 연산 - pop_front() : 덱의 앞에서 자료를 빼는 연산 - push_back() : 덱의 뒤에 자료를 넣는 연산 - pop_b..
큐의 개념 # 큐는 무엇인가 - 한쪽 끝에서만 자료를 넣고 다른 한쪽 끝에서만 뺄 수 있는 자료구조 - 먼저 넣은 것이 가장 먼저 나오기 때문에 First In First Out(FIFO) 라고도 한다. - push와 pop을 진행하다보면 begin변수의 값은 계속 증가만 하기 때문에 배열이 꽉 차지 않은 상황임에도 더이상 데이터를 집어넣을 수 없는 상황이 발생한다. 이를 보완한 방법으로 '순환큐'라는 게 존재하는데 이는 심화과정이므로 나중에 공부하고 일단 아래 부분들만 알아두자. # 직접 구현하기 위해 필요한 요소 - 데이터를 저장할 '배열' (링크드리스트로 구현할 수도 있다고 함) - pop하면 나올 위치를 가리키는 'begin 변수' - push가면 들어갈 위치를 가리키는 'end 변수' # 큐의 ..
스택의 개념 # 스택이란 - 한쪽 끝에서만 자료를 넣고 뺄 수 있는 자료구조 - 마지막으로 넣은 것이 가장 먼저 나오기 때문에 LIFO(Last In First Out) 라고도 한다. - 가장 가까이에 있는 원소끼리 연산을 push, pop하여 해결되는 것은 O(1)이 걸린다는 특징이 있다. 이것이 스택의 특징. # 직접 구현하기 위해 필요한 요소 - 데이터를 저장할 '배열' - 다음에 삽입될 index의 위치, 혹은 들어있는 원소의 개수를 가리키는 'size 변수' # 스택의 연산 - push() : 스택의 맨 위에 자료를 넣음 - pop() : 스택의 맨 위에서 자료를 뺌 - top() : 스택의 맨 위에 위치한 자료를 읽어옴 - empty() : 스택이 비어있는지 아닌지를 알아봄 - size() :..
알고리즘, 자료구조 공부 가이드 # 알고리즘, 자료구조를 공부해야하는 이유 - 카카오, 라인, 구글, 스타트업 등 개발자가 성장할 수 있는 기업의 입사 관문이다. - 컴퓨터 과학 또는 컴퓨터 공학 전공자라면 기본 소양으로 여겨지는 부분이다. # 알고리즘 공부에 효과적인 방법 - 개념을 익히고 바로 문제를 풀어보는 것이 가장 효과적임. # 이를 위한 기본 커리큘럼 1. 2달 간 코드플러스 사이트에서 기초, 중급1, 중급2 강의를 수강한다. - 어떤 알고리즘과 자료구조가 존재하는지 익히고, 어떤 식으로 문제를 풀어나가는지에 대한 감을 얻는다. 2. 2달 간 알고리즘 문제해결전략 교재를 구매하여 읽는다.(2권부터 시작해서 1권까지) - https://book.algospot.com/ 3. 알고스팟 문제를 모두..