반응형

2736

squash : pull request을 병합하는 완전히 새로운 방법 : 개념

저장소를 깔끔하게 유지하는 것을 좋아하는 개발자 유형이신가요? 인터랙티브 리베이스의 팬이며 커밋이 제대로 될 때까지 커밋을 수정하고 있습니까? pull request을 완료 할 때 –no-ff 병합에 대한 대안을 원하십니까? PR 분기 프로세스에 새 항목이 추가되어 topic 분기 변경 사항을 squash merge 할 수 있어 대상 분기 히스토리가 크게 단순화되었습니다. squash merge이란 무엇입니까?squash merge은 Git에서 하나의 부모와 병합 커밋을 생성하는 병합 옵션입니다. 파일은 일반 병합과 동일하게 병합되지만 커밋 메타 데이터는 상위 커밋 중 하나만 표시하도록 변경됩니다. 결과는 대상 분기에서 단일 병합으로 일반 병합의 모든 변경 사항이 적용됩니다. 왜 squash merge을..

SW/Git 2019.10.10

GIT : pull request : 개념, 컨셉, 방법

pull request이란 무엇입니까? pull request는 공개 개발 프로젝트에 기여하는 방법입니다. Git과 같은 분산 버전 제어 시스템 (DVCS)을 사용하여 프로젝트에 컨트리뷰션을 제출하는 것이 선호되는 방법입니다. pull request은 개발자가 프로젝트의 기본 저장소에 포함되도록 외부 저장소에 커밋된 변경 사항을 요청할 때 발생합니다. “pull request”은 워크 플로 방법이며 버전 제어 시스템 자체의 기능이 아닙니다. 이 문서는 Git 버전 제어 시스템과 GitHub 호스팅 사이트를 예로 들어, 풀 요청에 대한 간단한 개요와 요청 작성 방법을 알아보겠습니다. 변경DVCS를 사용하여 오픈 소스 프로젝트에 기여할 때는 로컬 개발 환경에 소스 코드 저장소의 사본 또는 "clone"이 있..

SW/Git 2019.10.09

머신러닝 : feature learning : 개념

머신 러닝에서 기능 학습이란 무엇입니까? 기능 학습은 머신 러닝 작업을 수행하기 위해 적절한 데이터 표현을 찾을 수 있는 일련의 방법입니다. 다시 말해 기능 학습의 목표는 원시 데이터를 기계 학습 작업 (예 : 분류)에 더 적합한 표현으로 매핑하는 변환을 찾는 것입니다. 예를 통해 살펴 보겠습니다. 이를 위해 본질 상 특징 학습의 개념을 활용하는 신경망을 사용할 것입니다. 신경망에서 각 숨겨진 계층은 입력 데이터를 더 높은 수준의 추상화를 캡처하는 경향이 있는 내부 표현에 매핑합니다. 다음 데이터 세트를 분류한다고 가정합니다. 입력을 조정하지 않고 선형 모델 (숨겨진 레이어가 없는 피드 포워드 신경망 등)을 사용하여 데이터를 분리 할 수 ​​없기 때문에 이 데이터 세트는 선형으로 분리 할 수 ​​없습니다..

SW/머신러닝 2019.10.08

Python : 가장 빠른 JSON 라이브러리 선택 방법

JSON을 많이 사용할수록 병목 현상으로 JSON 인코딩 또는 디코딩이 발생할 가능성이 높아집니다. 파이썬의 내장 라이브러리는 나쁘지 않지만, 사용 가능한 더 빠른 JSON 라이브러리가 여러개 있습니다. 사용할 라이브러리를 어떻게 선택하면 좋을까요? 정답이없고, 모두를 지배 할 수 있는 가장 빠른 JSON 라이브러리가 없다는 것입니다. "빠른 JSON 라이브러리"는 사용 패턴이 다르기 때문에 사람들마다 다르게 느낄 수 있습니다. 속도는 모든 것이 아닙니다. 보안 및 사용자 지정과 같은 다른 관심 사항도 있을 수 있습니다. 따라서 필요에 따라 가장 빠른 JSON 라이브러리를 선택할 수 있도록 Python에 대한 빠른 JSON 라이브러리를 선택하는 과정을 공유하고자 합니다. 이 프로세스를 사용하여 특정 요구..

SW/Python 2019.10.06

싱글턴 디자인 패턴 : 정의, 개념, 구조 예시

싱글톤 디자인 패턴 의도- 클래스에 인스턴스가 하나만 있는지 확인하고 글로벌 액세스 지점을 제공합니다.- 캡슐화된 "지정한 시간에 초기화" 또는 "처음 사용시 초기화" 문제- 응용 프로그램은 하나의 개체 인스턴스만 필요합니다. 또한 지연 초기화 및 전역 액세스가 필요합니다. 토론단일 인스턴스 객체의 클래스를 생성, 초기화, 액세스 및 적용을 담당하도록 합니다. 인스턴스를 개인 정적 데이터 멤버로 선언하십시오. 모든 초기화 코드를 캡슐화하고 인스턴스에 대한 액세스를 제공하는 공개 정적 멤버 함수를 제공하십시오. 클라이언트는 단일 인스턴스에 대한 참조가 필요할 때마다 접근자 함수 (클래스 이름 및 범위 확인 연산자 사용)를 호출합니다. 다음 기준 중 세 가지가 모두 충족되는 경우에만 싱글톤을 고려해야합니다...

SW/디자인 패턴 2019.10.05

파이썬 : 프로그래머스 : 시저 암호 : 풀이

코드 upper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' lower = upper.lower() def solution(s, n): for idx, char in enumerate(s): if char in upper: tIdx = (upper.index(char) + n) % 26 s = s[0:idx] + upper[tIdx] + s[idx+1:] elif char in lower: tIdx = (lower.index(char) + n) % 26 s = s[0:idx] + lower[tIdx] + s[idx+1:] return s 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.05ms, 10.8MB) 테스트 2 〉 통과 (0.05ms, 10.7MB) 테스트 3 〉 통과 (0.05ms..

SW/알고리즘 2019.10.04

MNIST : 손 글씨 : 케라스 : 예제 구현 해보기

%matplotlib inline import pandas as pd import numpy as np import matplotlib.pyplot as plt import math from keras.utils.np_utils import to_categorical from keras.models import Sequential, load_model, Model from keras.layers import Dense, Dropout, Flatten, Conv2D, MaxPool2D MNIST 예제를 수행하기 전에, 필요한 라이브러리들을 임포트합니다. from keras.datasets import mnist (x_train, y_train), (x_test, y_test ) = mnist.load_da..

SW/영상인식 2019.10.03

파이썬 : 프로그래머스 : 약수의 합 : 풀이

코드 def solution(n): answer = 0 for i in range(1, n+1): if n % i == 0: answer += i return answer 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.04ms, 10.7MB) 테스트 2 〉 통과 (0.04ms, 10.8MB) 테스트 3 〉 통과 (0.08ms, 10.8MB) 테스트 4 〉 통과 (0.05ms, 10.8MB) 테스트 5 〉 통과 (0.11ms, 10.7MB) 테스트 6 〉 통과 (0.07ms, 10.7MB) 테스트 7 〉 통과 (0.15ms, 10.8MB) 테스트 8 〉 통과 (0.06ms, 10.7MB) 테스트 9 〉 통과 (0.13ms, 10.7MB) 테스트 10 〉 통과 (0.16ms, 10.6MB) 테스트 11 ..

SW/알고리즘 2019.10.02

안드로이드 스튜디오 : 빌드오류해결 : This version of Android Studio cannot open this project, please retry with Android Studio 3.4 or newer

This version of Android Studio cannot open this project, please retry with Android Studio 3.4 or newer 예전에 진행하던 안드로이드 프로젝트 과제가 위와 같은 에러를 뿜으며 빌드가 되지 않았다. 잘되던 친구가 안되서 빌드 버전을 낮춰서 해결을 할 수 있을 것으로 보였다. 하지만, 앞으로 서비스를 만들어가는 데, 굳이 버전을 낮춰서 해결을 하고 싶지 않아 조사를 해보니, 안드로이드 스튜디오를 업그레이드 하면 해결 할 수 있다고 한다. 안드로이드 스튜디오 업데이트하는 방법은 하기와 같다. Help -> Check for Updates 메뉴 탭에서 위와 같이 들어가 업데이트를 진행한다. 최근 sdk 안드로이드 10 버전이 나오고, ..

SW/앱플랫폼 2019.10.01

파이썬 : 프로그래머스 : 이상한 문자 만들기 : 풀이

코드 def solution(s): answer = "" counter = 0 for i in range(len(s)): if s[i] == " ": counter = 0 answer += " " elif counter % 2 == 0: answer +=s[i].upper() counter +=1 elif counter % 2 == 1: answer += s[i].lower() counter +=1 return answer 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.04ms, 10.6MB) 테스트 2 〉 통과 (0.04ms, 10.7MB) 테스트 3 〉 통과 (0.04ms, 10.7MB) 테스트 4 〉 통과 (0.07ms, 10.7MB) 테스트 5 〉 통과 (0.05ms, 10.7MB) 테스트 6..

SW/알고리즘 2019.09.30

파이썬 : 프로그래머스 : 정수 내림차순으로 배치하기 : 풀이

코드 def solution(n): answer = 0 num_list = [] n_str = str(n) for i in range(len(n_str)): num_list.append(int(n_str[i])) num_list.sort(reverse=True) for i in num_list: answer = answer*10 + i return answer 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.06ms, 10.8MB) 테스트 2 〉 통과 (0.06ms, 10.9MB) 테스트 3 〉 통과 (0.07ms, 10.8MB) 테스트 4 〉 통과 (0.06ms, 10.8MB) 테스트 5 〉 통과 (0.06ms, 10.8MB) 테스트 6 〉 통과 (0.06ms, 10.9MB) 테스트 7 〉 통과 (0..

SW/알고리즘 2019.09.29

파이썬 : 프로그래머스 : 최대공약수와 최소공배수 : 풀이

코드 def fun1(n, m): ret_val = 0 for i in range(1, min(n,m) + 1): if n % i == 0 and m % i == 0: ret_val = i return ret_val def fun2(n, m): for i in range(max(n,m), n*m + 1): if i % n == 0 and i % m == 0: return i def solution(n, m): return [fun1(n,m), fun2(n,m)] 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.05ms, 10.6MB) 테스트 2 〉 통과 (0.10ms, 10.7MB) 테스트 3 〉 통과 (0.05ms, 10.7MB) 테스트 4 〉 통과 (0.06ms, 10.6MB) 테스트 5 〉 통과 ..

SW/알고리즘 2019.09.28

파이썬 : 프로그래머스 : 제일 작은 수 제거하기 : 풀이

코드 def solution(arr): minVal = min(arr) arr.remove(minVal) if len(arr) == 0: arr.append(-1) return arr 실행 결과 정확성 테스트 테스트 1 〉 통과 (1.55ms, 69.9MB) 테스트 2 〉 통과 (0.05ms, 10.7MB) 테스트 3 〉 통과 (0.06ms, 10.9MB) 테스트 4 〉 통과 (0.05ms, 10.8MB) 테스트 5 〉 통과 (0.05ms, 10.6MB) 테스트 6 〉 통과 (0.07ms, 10.7MB) 테스트 7 〉 통과 (0.07ms, 10.9MB) 테스트 8 〉 통과 (0.04ms, 10.7MB) 테스트 9 〉 통과 (0.04ms, 10.5MB) 테스트 10 〉 통과 (0.04ms, 10.7MB) ..

SW/알고리즘 2019.09.27

파이썬 : 프로그래머스 : 정수 제곱근 판별 : 풀이

코드 import math def solution(n): answer = math.pow(math.pow(n, 0.5) + 1, 2) if answer - int(answer) == 0: return int(answer) else: return -1 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.06ms, 10.8MB) 테스트 2 〉 통과 (0.07ms, 10.8MB) 테스트 3 〉 통과 (0.06ms, 10.7MB) 테스트 4 〉 통과 (0.06ms, 10.8MB) 테스트 5 〉 통과 (0.05ms, 10.8MB) 테스트 6 〉 통과 (0.06ms, 10.7MB) 테스트 7 〉 통과 (0.06ms, 10.8MB) 테스트 8 〉 통과 (0.06ms, 10.8MB) 테스트 9 〉 통과 (0.05ms, ..

SW/알고리즘 2019.09.26

파이썬 : 프로그래머스 : 자연수 뒤집어 배열로 만들기 : 풀이

풀이 def solution(n): answer = [] while n > 0: answer.append(n%10) n = int(n / 10) return answer 코드 정확성 테스트 테스트 1 〉 통과 (0.05ms, 10.5MB) 테스트 2 〉 통과 (0.06ms, 10.7MB) 테스트 3 〉 통과 (0.04ms, 10.7MB) 테스트 4 〉 통과 (0.04ms, 10.8MB) 테스트 5 〉 통과 (0.04ms, 10.6MB) 테스트 6 〉 통과 (0.04ms, 10.7MB) 테스트 7 〉 통과 (0.04ms, 10.7MB) 테스트 8 〉 통과 (0.05ms, 10.5MB) 테스트 9 〉 통과 (0.04ms, 10.6MB) 테스트 10 〉 통과 (0.05ms, 10.7MB) 테스트 11 〉 통과..

SW/알고리즘 2019.09.25

파이썬 : 프로그래머스 : 자릿수 더하기 : 풀이

코드 def solution(n): answer = 0 n_str = str(n) for i in range(len(n_str)): answer += int(n_str[i]) return answer 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.06ms, 10.8MB) 테스트 2 〉 통과 (0.06ms, 10.9MB) 테스트 3 〉 통과 (0.06ms, 10.8MB) 테스트 4 〉 통과 (0.05ms, 10.9MB) 테스트 5 〉 통과 (0.06ms, 10.8MB) 테스트 6 〉 통과 (0.06ms, 10.9MB) 테스트 7 〉 통과 (0.09ms, 10.8MB) 테스트 8 〉 통과 (0.06ms, 10.7MB) 테스트 9 〉 통과 (0.05ms, 10.8MB) 테스트 10 〉 통과 (0.06ms,..

SW/알고리즘 2019.09.24

파이썬 : 프로그래머스 : 가장 긴 팰린드롬 : 풀이

풀이 def isPalindrome(s, start, end): diff = int((end - start + 1) / 2 - 1) for i in range(diff + 1): c1 = s[start + i] c2 = s[end - i]; if c1 != c2: return False return True def solution(s): for answer in range(len(s),0,-1): start = 0 end = 0 + answer - 1 while end < len(s): if isPalindrome(s, start, end): return answer; start += 1 end += 1 return 1 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.05ms, 10.8MB) 테스트 2..

SW/알고리즘 2019.09.23

파이썬 : 프로그래머스 : 타일 장식물 : 풀이

풀이 def solution(N): if N == 1: return 4 elif N == 2: return 6 tile_list = [1, 1] for i in range(2, N): tile_list.append( tile_list[i-2] + tile_list[i-1]) tile_list.pop(0) answer = 4 for i in tile_list: answer += i * 2 return answer 실행 결과 정확성 테스트 테스트 1 〉 통과 (0.04ms, 10.7MB) 테스트 2 〉 통과 (0.03ms, 10.7MB) 테스트 3 〉 통과 (0.04ms, 10.7MB) 테스트 4 〉 통과 (0.04ms, 10.7MB) 테스트 5 〉 통과 (0.04ms, 10.7MB) 테스트 6 〉 통과 (..

SW/알고리즘 2019.09.22

파이썬 : 프로그래머스 : 2 x n 타일링 : 풀이

풀이 def solution(n): answer = 0 if n == 1: return 1 elif n == 2: return 2 else: answer_list = [0,1,2] for i in range(3, n+2): answer_list.append((answer_list[i-1] + answer_list[i-2])% 1000000007) return answer_list[i-1] return answer 실행 결과 정확성 테스트 테스트 1 〉 통과 (1.52ms, 10.8MB) 테스트 2 〉 통과 (0.32ms, 10.9MB) 테스트 3 〉 통과 (1.09ms, 10.8MB) 테스트 4 〉 통과 (1.99ms, 10.7MB) 테스트 5 〉 통과 (0.26ms, 10.7MB) 테스트 6 〉 통과 ..

SW/알고리즘 2019.09.21
반응형