분류 전체보기117 [Node.js] this this this는 현재 실행중인 함수의 컨텍스트를 나타낸다. 전역 컨텍스트에서의 'this' function hello(){ console.log(this); // global console.log(this === global); // true } hello(); Object [global] { ... } true 클래스 내부에서의 'this class ClassA { constructor(num){ this.num = num; } classAMethod(){ console.log('--------------------'); console.log(this); console.log('--------------------'); } } const classA = new ClassA(10); classA.c.. 웹/NodeJS 2023. 11. 23. [Do-it! 코딩 테스트-기초편] 022. 수 정렬하기 3 문제 https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 접근 데이터 크기: 10,000,000 시간 제한: 5초 메모리 제한: 8MB 데이터 크기가 크고 시간에 제약이 없다면 카운팅 정렬을 사용하는 것이 좋다. 코드 import sys N = int(sys.stdin.readline()) array = [0] * 10001 for i in range(N): a = int(sys.stdin.readline()) array[a] += 1 for i in range(10.. 파이썬/코딩 테스트 2023. 11. 3. [Do-it! 코딩 테스트-기초편] 021. 버블 정렬 프로그램 2 - 미해결 문제 https://www.acmicpc.net/problem/1517 1517번: 버블 소트 첫째 줄에 N(1 ≤ N ≤ 500,000)이 주어진다. 다음 줄에는 N개의 정수로 A[1], A[2], …, A[N]이 주어진다. 각각의 A[i]는 0 ≤ |A[i]| ≤ 1,000,000,000의 범위에 들어있다. www.acmicpc.net 접근 코드 설명 파이썬/코딩 테스트 2023. 11. 3. [Do-it! 코딩 테스트-기초편] 020. 수 정렬하기 2 문제 https://www.acmicpc.net/problem/2751 2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 접근 데이터 크기: 1,000,000 시간 제한: 2초 정렬 알고리즘 중에 시간 복잡도가 O(N logN) 인 알고리즘 사용 heap sort 와 merge sort quick sort의 평균 시간 복잡도가 O(N logN)이라고는 하지만, 최악의 경우를 고려하면 느린 정렬에 속하기 때문에 시간 초과이다. 코드 import sys def merge_sort(arr): def sor.. 파이썬/코딩 테스트 2023. 11. 3. [Do-it! 코딩 테스트-기초편] 019. k번째 수 구하기 문제 https://www.acmicpc.net/problem/11004 11004번: K번째 수 수 N개 A1, A2, ..., AN이 주어진다. A를 오름차순 정렬했을 때, 앞에서부터 K번째 있는 수를 구하는 프로그램을 작성하시오. www.acmicpc.net 접근 코드 import sys N, K = map(int, sys.stdin.readline().split(' ')) li = list(map(int, sys.stdin.readline().split(' '))) li.sort() print(li[K - 1]) 설명 def quick_sort(array, start, end): if start >= end: return pivot = start left = start + 1 right = end.. 파이썬/코딩 테스트 2023. 11. 3. [Do-it! 코딩 테스트-기초편] 018. ATM 인출 시간 계산하기 문제 https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 접근 데이터 크기: 1,000 시간 제한: 1초 데이터의 크기가 크지 않기 때문에 O(N^2) 정렬을 사용해도 됨. 여기서는 삽입 정렬을 사용 코드 import sys N = int(input()) li = list(map(int, sys.stdin.readline().split(' '))) total = 0 for i in range(1, N): for j in range(i, 0, -1): if li[j] < li[j.. 파이썬/코딩 테스트 2023. 11. 3. [Do-it! 코딩 테스트-기초편] 017. 내림차순으로 자릿수 정렬하기 문제 https://www.acmicpc.net/problem/1427 1427번: 소트인사이드 첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 접근 데이터 크기: 10자리 문자열 시간 제한: 2초 데이터의 크기가 작기 때문에 선택정렬 사용 코드 N = list(input()) temp = 0 for j in range(len(N)): max_val = -1 min_index = 0 for i in range(j, len(N)): if int(N[i]) > max_val: max_val = int(N[i]) max_index = i temp = int(N[j]) N[j] = max_val N[max_index] = te.. 파이썬/코딩 테스트 2023. 11. 3. [Do-it! 코딩 테스트-기초편] 016. 버블 정렬 프로그램 1 - 미해결 문제 https://www.acmicpc.net/problem/1377 1377번: 버블 소트 첫째 줄에 N이 주어진다. N은 500,000보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 A[1]부터 A[N]까지 하나씩 주어진다. A에 들어있는 수는 1,000,000보다 작거나 같은 자연수 또는 0이다. www.acmicpc.net 접근 미해결 코드 미해결 설명 미해결 파이썬/코딩 테스트 2023. 11. 3. [알고리즘] merge sort ✓ 새로운 리스트를 만들어 반환하는 경우 -> 메모리 많이 사용 def merge_sort1(arr): if len(arr) == 1: # result.append(li) return li m = len(arr) // 2 left = merge_sort1(arr[0:m]) right = merge_sort1(li[m:len(arr)]) merged_list = [] l = 0 h = 0 while l < len(left) and h < len(right): if left[l] < right[h]: merged_list.append(left[l]) l += 1 else: merged_list.append(right[h]) h += 1 merged_list += left[l:] merged_list += r.. 카테고리 없음 2023. 11. 2. [Git] Git 설치 및 사용방법 Git 버전관리 시스템의 종류 ✓ 버전관리 여러 파일을 하나의 버전으로 묶어 관리하는 것 버전관리 시스템의 종류 1. 클라이언트 - 서버 클라이언트들이 하나의 중앙 서버로부터 각자 필요한 것만 가져와서 작업을 하고 다시 중앙 서버로 보내 통합하는 방식 SVN, CVS 2. 분산 모델 하나의 중앙 서버가 존재하지만, 클라이언트들은 각자의 컴퓨터 저장소에 전체 사본을 가지고 작업하는 방식 Git Git의 장점 1. 동시에 작업하는 사람들과 소스코드를 주고받을 필요가 없음 2. 같은 파일을 여러명이 동시에 병렬 개발이 가능 3. 변동 과정을 체계적으로 관리할 수 있고, 언제든지 지난 시점의 버전으로 되돌릴 수 있음 4. 인터넷이 연결되지 않은 곳에서도 개발을 진행할 수 있고, 중앙 서버의 데이터가 유실되어도 .. 개발/Git 2023. 11. 1. [Do-it! 코딩 테스트-기초편] 015. 수 정렬하기 1 문제 https://www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 접근 데이터 크기: 1,000 시간 제한: 1초 나열된 수를 정렬하는 방법은 여러가지가 있다. 가장 직관적이고 쉬운 방법인 버블정렬은 O(N^2)의 시간 복잡도를 갖는다. 문제의 데이터의 크기가 1,000이기 때문에 버블정렬을 사용해도 충분하다. 그리고 파이썬 list에 내장된 메서드 sort()와 비교해보도록 한다. 코드 버블정렬 N = int(input()) li = [0] * N temp = .. 파이썬/코딩 테스트 2023. 10. 30. [Node.js] global, console js파일을 만들고 콘솔창에 아래 명령어를 입력하면 Node.js를 실행할 수 있다. $ node [파일명] global. 객체 node.js 환경에는 global. 이 생략되어있다. global은 node.js에서 가장 최상위 객체이다. console.log(global); Object [global] { global: [Circular *1], clearImmediate: [Function: clearImmediate], setImmediate: [Function: setImmediate] { [Symbol(nodejs.util.promisify.custom)]: [Getter] }, clearInterval: [Function: clearInterval], clearTimeout: [Function:.. 웹/NodeJS 2023. 10. 30. 이전 1 2 3 4 5 6 7 ··· 10 다음