728x90 algorithm50 [이것이 코딩 테스트다 with Python] 4강 파이썬 문법: 리스트 자료형 https://www.youtube.com/watch?v=GUwkMLtDQJE&list=PLVsNizTWUw7H9_of5YCB0FmsSc-K44y81&index=4 리스트 자료형 여러 개의 데이터를 연속적으로 담아 처리하기 위해 사용하는 자료형 사용자 입장에서 C나 자바에서의 배열(Array)의 기능 및 연결 리스트와 유사한 기능을 지원 C++의 STL vector와 기능적으로 유사함 리스트 대신에 배열 혹은 테이블이라고 부르기도 함 리스트 초기화 리스트는 대괄호([])안에 원소를 넣어 초기화하며 쉼표(,)로 원소를 구분 비어 있는 리스트를 선언하고자 할 때는 list() 혹은 간단히 []를 이용할 수 있음 리스트의 원소에 접근할 때는 인덱스(Index) 값을 괄호에 넣음 인덱스는 0부터 시작 # 직접 .. CodingTest 2021. 1. 4. [이것이 코딩 테스트다 with Python] 3강 파이썬 문법 수 자료형 https://www.youtube.com/watch?v=INg6kdOEEVc&list=PLVsNizTWUw7H9_of5YCB0FmsSc-K44y81&index=3 자료형 모든 프로그래밍은 결국 데이터를 다루는 행위 자료형에 대한 이해는 프로그래밍의 길에 있어서의 첫걸음이라고 할 수 있음 파이썬의 자료형으로는 정수형, 실수형, 복소수형, 문자열, 리스트, 튜플, 사전 등이 있음 파이썬의 자료형은 필수적으로 알아 두어야 함 정수형 정수형(Integer)은 정수를 다루는 자료형 양의 정수, 음의 정수, 0이 포함됨 코딩 테스트에서 출제되는 많은 문제들은 정수형을 주로 다루게 됨 # 양의 정수 a = 1000 print(a) # 음의 정수 a = -7 print(a) # 0 a = 0 print(a) 실행 결.. CodingTest 2021. 1. 4. [이것이 코딩 테스트다 with Python] 2강 알고리즘 성능 평가 www.youtube.com/watch?v=Pj3IX2VehkU&list=PLVsNizTWUw7H9_of5YCB0FmsSc-K44y81&index=2 알고리즘 성능 평가 복잡도(Complexity) 복잡도는 알고리즘의 성능을 나타내는 척도 시간 복잡도: 특정한 크기의 입력에 대하여 알고리즘의 수행 시간 분석 공간 복잡도: 특정한 크기의 입력에 대하여 알고리즘의 메모리 사용량 분석 동일한 기능을 수행하는 알고리즘이 있다면 일반적으로 복잡도가 낮을수록 좋은 알고리즘 빅오 표기법(Big-O Natation) 가장 빠르게 증가하는 항만을 고려하는 표기법 함수의 상한만을 나타내게 됨 예를 들어 연산 횟수가 3N³ + 5N² + 1,000,000인 알고리즘이 있다면 빅오 표기법에서는 차수가 가장 큰 항만 남기므로 .. CodingTest 2021. 1. 4. [이것이 코딩 테스트다 with Python] 1강_코딩 테스트란 무엇인가? + 카카오, 라인, 삼성전자 출제 경향 www.youtube.com/watch?v=Mf0pYO8VAZk&list=PLVsNizTWUw7H9_of5YCB0FmsSc-K44y81&index=1 이것이 코딩 테스트다 소스코드 https://github.com/ndb796/python-for-coding-test 온라인 저지(Online Judge) 란? 프로그래밍 대회나 코딩 테스트에서 나올 법한 문제를 시험해보는 온라인 시스템 사이트명 URL 코드포스(Codeforces) http://www.codeforces.com 탑코더(TopCoder) https://www.topcoder.com 릿코드(LeetCode) https://leetcode.com 코드셰프(CODECHEF) https://www.codechef.com 백준 온라인 저지(BOJ) .. CodingTest 2021. 1. 4. [이것이 코딩 테스트다] 10. 개발형 코딩 테스트 www.youtube.com/watch?v=d8KPN79UAKA&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=10 개발형 코딩 테스트 정해진 목적에 따라서 동작하는 완성된 프로그램을 개발하는 것을 요구하는 코딩 테스트 유형 일부 기업은 해커톤을 통해 채용을 진행한다 해커톤(Hackathon)이란 단기간에 아이디어를 제품화하는 프로젝트 이벤트이다 대개 1~2일 정도 진행되며 다수의 해커톤이 대회 형식을 빌려 해커톤이 끝나면 만든 프로그램을 시연하고 발표한 다음 채점을 진행한다 개발형 코딩 테스트는 분야에 따라 상세 요구사항이 다를 수 있다 예시 1) 모바일 클라이언트 개발: 안드로이드, iOS 앱 개발 예시 2) 웹 서버 개발: 스프링(Spring), 장고(Django.. CodingTest 2020. 10. 11. [이것이 코딩 테스트다] 9. 기타 알고리즘 www.youtube.com/watch?v=cswJ1h-How0&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=9 기타 알고리즘 소수 (Prime Number) 소수란 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 자연수로는 나누어떨어지지 않는 자연수이다 6은 1, 2, 3, 6으로 나누어떨어지므로 소수가 아니다 7은 1과 7을 제외하고는 나누어떨어지지 않으므로 소수이다 코딩 테스트에서는 어떠한 자연수가 소수인지 아닌지 판별해야 하는 문제가 자주 출제된다 소수의 판별: 기본적인 알고리즘 (Python) # 소수 판별 함수(2이상의 자연수에 대하여) def is_prime_number(x): # 2부터 (x - 1)까지의 모든 수를 확인하며 for i in range.. CodingTest 2020. 10. 10. [이것이 코딩 테스트다] 8. 기타 그래프 이론 www.youtube.com/watch?v=aOhhNFTIeFI&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=8 기타 그래프 이론 서로소 집합 서로소 집합(Disjoint Sets)란 공통 원소가 없는 두 집합을 의미 서로소 집합 자료구조 서로소 부분 집합들로 나누어진 원소들의 데이터를 처리하기 위한 자료구조 서로소 집합 자료구조는 두 종류의 연산을 지원한다 합집합(Union): 두 개의 원소가 포함된 집합을 하나의 집합으로 합치는 연산 찾기(Find): 특정한 원소가 속한 집합이 어떤 집합인지 알려주는 연산 서로소 집합 자료구조는 합치기 찾기(Union Find) 자료구조라고 불리기도 한다 여러 개 합치기 연산이 주어졌을 때 서로소 집합 자료구조의 동작 과정은 다음.. CodingTest 2020. 10. 10. [이것이 코딩 테스트다] 7. 최단 경로 알고리즘 www.youtube.com/watch?v=acqm9mM1P6o&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=7 다익스트라 최단 경로 알고리즘 최단 경로 문제 최단 경로 알고리즘은 가장 짧은 경로를 찾는 알고리즘을 의미함 다양한 문제 상황 한 지점에서 다른 한 지점까지의 최단 경로 한 지점에서 다른 모든 지점까지의 최단 경로 모든 지점에서 다른 모든 지점까지의 최단 경로 각 지점은 그래프에서 노드로 표현 지점 간 연결된 도로는 그래프에서 간선으로 표현 다익스트라 최단 경로 알고리즘 개요 특정한 노드에서 출발하여 다른 모든 노드로 가는 최단 경로를 계산한다 다익스트라 최단 경로 알고리즘은 음의 간선이 없을 때 정상적으로 동작한다 현실 세계의 도로(간선)은 음의 간선으로.. CodingTest 2020. 10. 10. [이것이 코딩 테스트다] 6. 다이나믹 프로그래밍 www.youtube.com/watch?v=5Lu34WIx2Us&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=6 다이나믹 프로그래밍 다이나믹 프로그래밍은 동적 계획법이라고도 부른다 일반적인 프로그래밍 분야에서의 동적(Dynamic)이란 어떤 의미를 가질까? 자료구조에서 동적 할당(Dynamic Allocation)은 '프로그램이 실행되는 도중에 실행에 필요한 메모리를 할당하는 기법'을 의미한다 반면에 다이나믹 프로그래밍에서 '다이나믹'은 별다른 의미 없이 사용된 단어이다 다이나믹 프로그래밍은 다음의 조건을 만족할 때 사용할 수 있다 최적 부분 구조 (Optimal Substructure) 큰 문제를 작은 문제로 나눌 수 있으며 작은 문제로 나눌 수 있으며 작은 문제의.. CodingTest 2020. 10. 4. [이것이 코딩 테스트다] 5. 이진 탐색 www.youtube.com/watch?v=94RC-DsGMLo&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=5 이진 탐색 알고리즘 순차 탐색: 리스트 안에 있는 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 확인하는 방법 이진 탐색: 정렬되어 있는 리스트에서 탐색 범위를 절반씩 좁혀가며 데이터를 탐색하는 방법 이진 탐색은 시작점, 끝점, 중간점을 이용하여 탐색 범위를 설정한다 이진 탐색 동작 예시 이미 정렬된 10개의 데이터 중에서 값이 4인 원소를 찾는 예시를 살펴보자 [Step 1] 시작점: 0, 끝점: 9, 중간점: 4 (소수점 이하 제거) [Step 2] 시작점:0, 끝점: 3, 중간점: 1 (소수점 이하 제거) [Step 3] 시작점: 2, 끝점: .. CodingTest 2020. 10. 4. [이것이 코딩 테스트다] 4. 정렬 알고리즘 www.youtube.com/watch?v=KGyK-pNvWos&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=4 정렬 알고리즘 정렬(Sorting) 이란 데이터를 특정한 기준에 따라 순서대로 나열하는 것 일반적으로 문제 상황에 따라서 적절한 정렬 알고리즘이 공식처럼 사용됨 선택 정렬 처리되지 않은 데이터 중에서 가장 작은 데이터를 선택해 맨 앞에 있는 데이터와 바꾸는 것을 반복한다 선택 정렬 동작 예시 정렬할 데이터를 준비한다 [Step 0] 처리되지 않은 데이터 중 가장 작은 '0'을 선택해 가장 앞의 '7'과 바꾼다 [Step 1] 처리되지 않은 데이터 중 가장 작은 '1'을 선택해 가장 앞의 '5'와 바꾼다 [Step 2] 처리되지 않은 데이터 중 가장 작은 '.. CodingTest 2020. 10. 4. [이것이 코딩 테스트다] 3. DFS & BFS www.youtube.com/watch?v=7C9RgOcvkvo&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=3 그래프 탐색 알고리즘: DFS/BFS 탐색(Search)이란 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정을 말한다 대표적인 그래프 탐색 알고리즘으로는 DFS와 BFS가 있다 DFS/BFS는 코딩 테스트에서 매우 자주 등장하는 유형이므로 반드시 숙지해야 한다 스택 자료구조 먼저 들어 온 데이터가 나중에 나가는 형식(선입후출)의 자료구조이다 입구와 출구가 동일한 형태로 스택을 시각화할 수 있다 스택 동작 예시 삽입(5) - 삽입(2) - 삽입(3) - 삽입(7) - 삭제() - 삽입(1) - 삽입(4) - 삭제() 삽입(5) - 삽입(2) - 삽입(3).. CodingTest 2020. 10. 3. 이전 1 2 3 4 5 다음 💲 추천 글 728x90