0709-Git

오늘은 기초 강의 깃 !!!

호눅스 어려운 내용을 굉장히 쉽게 잘 설명해주셔서 너무 좋았다 :D ~~

근데 내가 흡수는 많이 했나?

결국 깃은 커밋 점찍기 . .. … 이 점찍기를 어디서 뻗어 나가게 할지 branch로
이 점/branch이동은 checkout
head는 최신 branch/commit

큰 그림 결국 기승전 커밋 :D
이를 바탕으로 자료들과 생활코딩 강의들을 쭈욱 공부해봐야겠다 proGit도 읽어보고 !!!

미디엄에 글을 써봤다. :D

how_to_study
미디엄_글쓰기
미디엄_첫개발관련글_깃

미디엄 역시 예쁘다
깃 정리도 같이 해봐야겠다.

플래닝

플래닝을 오늘 좀 세워봤다 .

매일 할 일들

  1. 운동 1시간
  2. 비타민이랑 밥 3끼 챙겨먹기
  3. TIL 블로그 글 써서 회고 및 정리 -> 특히 생산성 기점으로 반성
  4. Daily Algorithm 알고리즘 매일 1시간~2시간 공부하기
  5. 유튜브 보지 않고 집에가서 바로 자기 !
  6. 코딩 설계 및 코딩 4~5시간 확보 하고 실행
  7. 실제 공부하는 시간 이번주만 체크해보기 !!!!

이번주 핵심은 5번이다 !!! 늦게 자고 늦게 일어나는데 제일 큰 역할 _=

위클리

  1. 러버덕 스터디 때 공부한 것을 바탕으로 미디엄에 글 쓰기 !
  2. 네트워크 http 챕터 2씩 정리하기
  3. 토요일만 온전히 부스트캠프 프로젝트에 투자해서 보내기
  4. 남의 코드 보고 공부하기 ex)madno, tim ,lumi, openSource
    나보다 조금 잘 하는 이들 코드를 보고 성장하는 편이 제일 빨리 는다고 한다 그렇다고 한다 :D

그리고 마저 실제로 공부하는 시간 체크하기 이번주는 _+
생각보다 소름끼치도록 없다.
오늘도
호눅스 강의 듣고
미디엄 글 조금 정리하고
밥 먹고
운동
글 정리 마저 조금 더 하고 / 월 계획/ 주계획 / til쓰고
… 그러니 10시다 ;ㅁ;
하루 4~5시간 코딩 설계 하고 코딩하는 시간 확보는 필수여야 되는데 …
오늘은 근데 수업이 좀 많았으니 오늘만 봐주자

미디엄 글 … 내가 쓴 글 잘 안 읽힌다… 글 쓰는 연습 좀 해야겠다. !!!

Daily Algorithm

오늘부터 코딜리티를 다시 1문제씩 풀어보겠다.

  1. binaryGap
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    function solution(N) {
    // write your code in JavaScript (Node.js 8.9.4)
    let copyN = N;
    let digit;
    let startFlag;
    let countFlag;
    let maxCount = 0;
    let tempCount = 0;

    while(copyN!==0){
    digit = copyN%2
    if(digit===1){
    if(tempCount){
    maxCount = Math.max(tempCount, maxCount)
    tempCount = 0;
    }
    startFlag = true;
    countFlag = false;
    }
    else {
    countFlag = true;
    if(startFlag) tempCount+=1
    }
    copyN = Math.floor(copyN/2)
    }
    return maxCount;
    }

팀 이 푼 것

1
return N.toString(2).split('1').slice(1,-1).reduce((max,v)=>Math.max(max,v.length),0);

다른 사람 풀이

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
function solution(N) {
// write your code in JavaScript (Node.js 4.0.0)

var number = N;
var binary = '';
var counter = -1;
var max = 0;
while(number > 0) {
var digit = number % 2;

if(digit === 1) {
if(counter > max) {
max = counter;
}
counter = 0;
} else if(counter >= 0) {
counter++;
}

binary = '' + digit + binary;
number = parseInt(number / 2);
}

//console.log('number, binary:', number, binary);

return max;
}

다른 사람들 풀이들을 보면서
split ('1')아이디어 좋다 근데 slice(1,-1).reduce .. => 살펴봐야겠다 ? ;ㅁ; 어떻게 한 건지 잘 모르겠다
내 풀이 flag를 쓸데 없이 많이 썼다 ㅜㅜ … 변수의 변동으로 충분히 대처할 수 있었다 !