Using Language : Java Using Tool : IntelliJ 프로그래머스 문제 소개 문제 설명 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 예를 들어, 입력된 수가 6이라면 6→3→10→5→16→8→4→2→1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야하는지 반환하는 함수, solution을 완성해 주세요. 단, 작업을 500번을 반복해도 1이 ..
Using Language : Java Using Tool : IntelliJ 프로그래머스 문제 소개 문제 설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 제한 조건 두 수는 1이상 1000000이하의 자연수입니다. 예시 n m return 3 12 [3, 12] 2 5 [1, 10] 의사코드 java의 BitInteger 함수 사용해보기 최대공약수는 gcd를 이용해서 구하고, 최소공배수는 두 수를 곱한 값에서 최..
1. git commit staging area에서 관리되고 있는 파일을 commit 명령어를 통해 git repository로 옮길 수 있다. // 기본 명령어. 아무런 메시지를 남기지 않아서 잘 사용하지 않는다. $ git commit // first commit 이라는 멘트를 추가해서 커밋한다. // 이렇게 메시지를 남기면, 어떤 기능을 추가하거나 수정해서 코드를 커밋했는지 알아보기 쉽다. $ git commit -m "first commit" // git add 를 쓰지않고 내 모든 로컬의 코드를 커밋할때 // -a 옵션과 -m 옵션을 함께 사용해보았다. $ git commit -am "전체 코드 커밋" 2. 어떤 방식으로 커밋을 해야할까? 코드를 관리하기 위해서는 전체적인 틀을 한번에 저장하는 ..
1. git status 로컬 파일의 상태들을 확인할 수 있다. 어떤 브랜치에서, 어떤 커밋이 이루어졌으며, 파일들의 상태를 볼 수 있다. $ git status // 간단한 버전 $ git status -s 아래 사진을 보면 master 브랜치에서 작업중이고, Solution2_9.java 파일이 deleted 된 것과 .settings 는 git에서 untracked 상태인 것을 확인할 수 있다. -s 옵션을 줘서 간단한 버전으로 확인 가능하다. 2. git add untracked 파일을 staging area에 옮길때 사용 git add .settings 라고 하면, .settings가 staging area로 올라가서 git에서 관리되게 된다. 아래 사진을 보면 ?? .settings에서 A ...
1. Git 작업환경 - Git 작업환경은 크게 3가지로 나뉩니다. working directory, staging area, .git directory ( 이 작업환경은 eclipse나 IntelliJ와 같은 IDE에서 편하게 확인이 가능합니다. ) 1) working directory - 실제로 작업중인 내 로컬 환경 2) staging area - 로컬 환경에서 작업을 완료했다고 생각되는 파일을 옮겨 놓는 곳 3) git directory - staging area 에 올려 둔 파일을 commit 명령어를 이용해 깃 히스토리에 저장해 놓는 곳 이렇게 총 3가지 작업환경은 내 컴퓨터에만 보관되므로 파일들을 다른 작업자들과 공유할 수 없고, 컴퓨터가 날아가면 작업파일도 함께 날아갑니다. 그래서 우리는 ..
1. Git의 정의 VCS ( = Version Control System ) 중 하나로 코드 관리 뿐만 아니라 이미지, 텍스트 등의 컴퓨터 관련 파일을 관리할 수 있다. 2. Git 사용 전에는 어떻게 코드를 관리했을까? Git사용 전에는 CVC ( = Centralized Version Control ) 을 사용했었는데, 이건 서버에서 파일을 관리하는 형태라 서버에 문제가 생기면 일이 생겼고, 오프라인 환경에서도 사용할 수 없었다. 다음으로는 DBC ( = Distributed Version Control ) 을 사용했다. 여기에는 Git도 포함된다. 서버에만 이력을 저장하는 것이 아니라, 모든 개발자들이 같은 이력을 가지고 있는 것! 분산 시스템을 이용하면 서버에 문제가 있거나 오프라인 환경에서도 ..
기본적으로 JPA에서 Insert, Update, Delete 기능을 하는 Native query를 쓸때는 아래와 같이 작성한다. @Repository public interface TestRepository extends JpaRepository{ @Modifying @Transactional @Query(value="INSERT INTO sample VALUES(username = :username,useremail = :useremail)".nativeQuery=true) public int insertQuery(@Param("username") username, @Param("useremail") useremail); } JpaRepository에 들어있는 TestEntity 에는 username..
git으로 형상 관리를 할때, 나 혼자 하는 프로젝트면 기본 master 브랜치에 커밋을 하면 되지만, 여러 명이 형상 관리를 한다면 각자 작업한 것을 관리하기 위해 브랜치를 따고, 하나로 Merge 하는 과정을 거친다. 내가 작업할 브랜치를 생성하는 법! 1. git에서 원하는 프로젝트 내려받기. 2. Git Repository에 있는 프로젝트를 로컬로 가져오기 프로젝트 명 위에서 오른쪽 버튼 클릭 3. 브랜치 생성 Package Explorer로 넘어와서 import된 프로젝트 위에서 마우스 오른쪽 버튼 클릭. Team → Switch To → New Branch 4. 원하는 브랜치 명 입력 아래 칸에 원하는 브랜치 명을 입력하고 Finish. 자동으로 생성한 브랜치로 이동해서 관리가 된다. 아래에 ..