본문 바로가기
반응형

전체 글167

🔠 Python으로 알파벳 리스트 만들기! 문제 ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] 파이썬으로 다음과 같이 알파벳이 순서대로 들어가있는 배열을 만들어보자! 해결 # 소문자 출력 [chr(code) for code in range(97,123)] # 대문자 출력 [chr(code) for code in range(65,91)] ASCII 코드를 이용해 만들어주면 됩니다. 관련 문서 비슷한 문제 🔠 Javascript로 알파벳 리스트 만들기! 문제 ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l',.. 2023. 1. 13.
🧮 부분 집합, 멱집합 구하기 알고리즘 직접 구현! 부분집합, 멱집합을 구하는 알고리즘을 파이썬으로 구현해보자. 부분 집합, 멱 집합이란? 부분 집합은 어떤 집합에서 몇몇 원소들만 뽑아서 만든 집합. 부분 집합은 원래 집합에 포함되는 관계이다. 멱집합은 어떤 집합의 모든 부분 집합을 모아둔 집합 원소 갯수가 n인 원래 집합에서 원소 갯수가 r인 부분집합의 갯수는 nCr(조합)과 같다. 멱집합 원소의 갯수는 2^n이다. 부분 집합, 멱집합 알고리즘 구현해보기 부분 집합 조합을 구하는 방법과 같다. 아래 글 참고. 🧮 조합 알고리즘 직접 구현! 조합과 중복조합 알고리즘을 파이썬으로 구현하기 조합이란? 원소를 순서없이 나열하는 것 n개의 원소에서 r개를 조합하면 가짓수는 n!/(n-r)!r! 중복조합은 n+r-1개의 원소에서 r개를 조합하는 것 programm.. 2023. 1. 10.
🧮 조합 알고리즘 직접 구현! 조합과 중복조합 알고리즘을 파이썬으로 구현하기 조합이란? 원소를 순서없이 나열하는 것 n개의 원소에서 r개를 조합하면 가짓수는 n!/(n-r)!r! 중복조합은 n+r-1개의 원소에서 r개를 조합하는 것과 같다. n개의 원소에서 모든 조합 가지수는 2^n - 1 여러가지 조합 알고리즘 구현해보기 기본 조합 n개의 원소가 있는 배열에서 r개를 뽑는다. 조합 점화식에 기반한 방식 def combination(arr, r): if r == 0: return [set()] elif arr == []: return [] new_arr = arr[:] item = new_arr.pop() not_item_comb = combination(new_arr, r) item_comb = [s|{item} for s in c.. 2023. 1. 10.
🧮 순열 알고리즘 직접 구현! 순열과 중복순열 알고리즘을 파이썬으로 구현하기 순열이란? 원소들을 순서에 따라 나열하는 것 n개의 원소에서 r개를 나열한다 하면 그 가짓수는 n!/(n-r)! 중복해서 원소를 뽑으면 n^r 전체 순열 가짓수의 합은 조금 복잡하다. (링크) 여러가지 순열 알고리즘 구현해보기 기본 순열 n개의 원소를 가진 배열 arr에서 r개를 뽑아 나열한다. swap을 이용한 방식 def permutations (arr, r): n = len(arr) results = [] def _perm_swap (arr, depth): if (depth == r): results.append(arr[:r]) return for i in range(depth, n): # 위치를 바꿈 arr[i], arr[depth] = arr[dep.. 2023. 1. 10.
[프로그래머스] Lv0 - Day2 : 사칙연산, 조건문, 배열 프로그래머스 코딩테스트 입문 레벨0 문제 해결법 문제1 : 두 수의 나눗셈 바로가기 두 수를 나눈 값에 1000을 곱한 후 정수부분을 출력 파이썬 (Python) def solution(num1, num2): return num1*1000//num2 자바스크립트 (Javascript) function solution(num1, num2) { return parseInt(num1*1000/num2); } function solution(num1, num2) { return num1*1000/num2i*2); } map 함수를 이용 function solution(numbers) { let answer = []; numbers.forEach(i=>answer.push(i*2)) return answer; }.. 2022. 11. 5.
[프로그래머스] Lv0 - Day1 : 사칙연산 프로그래머스 코딩테스트 입문 레벨0 문제 해결법 문제1 : 바로가기 두 수의 합을 출력 파이썬 (Python) 일반적인 해법 def solution(num1, num2): return num1 + num2 solution = lambda a,b:a+b 특수한 해법 solution = int.__add__ 기본 정의된 연산자 메서드 이용. 연산자 오버로딩시에 쓰임 자바스크립트 (Javascript) function solution(num1, num2) { return num1 + num2; } solution = function (num1, num2) { return num1 + num2; } solution = (a,b) => a+b 자바스크립트에는 연산자 오버로딩이 없음 문제2 : 두 수의 차 바로가기.. 2022. 11. 5.
반응형