기타

기타/자료구조, 알고리즘

[Python] 순열(Permutation)과 조합(Combination)

순열 순열이란 서로 다른 n개중 r개를 선택하여 순서를 정해 나열할 수 있는 가짓수이다. 예를 들어 [A, B, C] 리스트가 있을 때 2개를 선택한 후 순서를 고려해서 나열할 수 있는 가짓수는 [(A,B), (A,C), (B, A), (B, C), (C, A), (C, B)] 총 6개이다. 순열 구현해보기 def permutation(arr, n): result = [] if n == 0: return [[]] elif n == 1: return [[i] for i in arr] elif n >= 2: for i in range(len(arr)): elem = arr[i] p = permutation(arr[:i] + arr[i+1:], n-1) for rest in p: result.append([e..

기타/코딩테스트

[Python] 프로그래머스 - 기사단원의 무기

1. 문제정보 https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 약수의 갯수를 구하는 로직에서 시간초과를 해결하는 것이 핵심인 문제이다. 첫 시도에서 n의 약수를 구하기 위해 1부터 n까지 탐색을 진행했는데 타임아웃이 발생하면서 실패했다. 그래서 1부터 (제곱근+1) 까지 탐색을 진행했는데 여기서 약수의 갯수를 카운팅하는 아이디어가 부족해서 결국 혼자서 해결하지 못했다. 자연수n을 1부터 (n의 제곱근+1)까지 탐색하면서 나누어지는지..

기타/기타

Git 명령어 정리

1. 깃(Git)이란 버전 관리 시스템(VCS)의 한 종류로 소스 코드를 효율적으로 관리하기 위한 기술입니다. 파일의 변경 사항을 추적하고 여러 명의 개발자가 작성한 소스코드를 합치고 충돌을 해결하는데 사용됩니다. VCS에는 SVN도 많이 사용하는데 SVN 과의 차이점은 SVN은 중앙 서버에서 소스코드를 관리지만 Git은 분산형 저장소로 중앙 서버의 장애로 인해 소스코드가 사라지더라도 로컬 저장소를 통해 복원이 가능합니다. 2. 깃의 명령어 깃(Git)에서는 일반적으로 Commit, Push, Pull, Merge 을 주로 사용합니다. 이번 포스팅에서는 명령어 기반으로 깃을 사용하는 것을 포스팅하려고 합니다. 명령어 기반으로 깃을 이해한다면 소스트리 같은 Git GUI를 좀 더 효율적으로 사용할 수 있습..

기타/기타

[DevOps] CI/CD 란

CI/CD 는 개발 단계부터 배포까지 자동화하하여 빠르게 변화하는 시장과 고객의 요구에 대응하기 위한 개발 프로세스이다. 서비스 규모가 커질수록 많은 개발자와 함께 협업하고, 각자 소스를 머지할 때 발생하는 충돌을 해결하고, 테스트까지 하다 보면 오랜 시간이 걸리게 때문에 대규모의 서비스를 빠르게 개발하고 배포하는 것은 생각보다 어려운 일이다. 이런 문제점을 해결하기 위해 많은 기업에서 CI/CD를 구축하고 있다. 1. CI(Continuos Integration) CI는 지속적으로 통합한다는 의미로 개발자들이 개발한 내용을 주기적으로 Repository에 머지해서 코드를 통합한다는 뜻이다. 주기적으로 코드를 통합하지 않고 한 번에 통합하려고 한다면 머지 충돌이 많이 발생하기 때문에 이를 해결하는 데 더..

lazy man
'기타' 카테고리의 글 목록 (4 Page)