전체 글 99

[Python/파이썬] 리스트 요소추가 (append / insert / extend)

파이썬에서 '리스트' 는 다양한 자료형( 숫자, 문자열, 리스트 등)을 포함할 수 있는 만능 자료형이다. 이러한 리스트에 새로운 요소를 추가하려면 list 자료형에 딸려있는 append 메소드를 사용해야한다. append 메소드는 특징이 메소드의 인자를 하나만 받는다는 것이다. new_list = [0,1,2,3,4] new_list.append(5) print(new_list) #[0,1,2,3,4,5] 만약에 여러개의 요소를 넣고싶다면 아래와 같이 append메소드를 일일이 호출해서 사용해야한다. new_list = [0,1,2,3,4] new_list.append(5) new_list.append(6) new_list.append(7) print(new_list) #[0,1,2,3,4,5,6,7] ..

Study/Python 2021.01.27

[알고리즘 / Algorithm] chapter 3. Greedy Algorithm (그리디 알고리즘) -큰 수의 법칙

Greedy Algorithm (그리디 알고리즘) 다양한 수로 이루어진 배열이 있을 때 주어진 수들을 M번 더해서 가장 큰 수를 만드는 법칙이 있다. 단, 배열의 특정한 인덱스에 해당하는 수가 연속으로 K번을 초과해 더해질 수 없다는 것이 특징이다. 입력조건 첫째 줄에 N(2≤ N ≤1,000) , M(1≤ M ≤10,000), K(1 ≤ K ≤10,000) 의 자연수가 주어지며 각 자연수는 공백으로 구분한다. 둘째 줄에 N개의 자연수가 주어진다. 각 자연수는 공백으로 구분한다. 단, 자연수는 1 이상 10,000이하의 수로 주어진다. 입력으로 주어지는 K는 항상 M보다 작거나 같다. 출력조건 첫째 줄에 큰 수의 법칙에 따라 더해진 답을 출력한다. 1. 주어진 수를 M번 더했을 때 가장 큰 수가 나오려면..

Study/Algorithm 2021.01.10

[알고리즘 / Algorithm] chapter 3. Greedy Algorithm (그리디 알고리즘)

Greedy Algorithm (그리디 알고리즘) 그리디 알고리즘은 매 순간 가장 좋아보이는 것을 선택하며, 현재의 선택이 나중에 미칠 영향에 대해서는 고려하지 않는다. 그리디 알고리즘을 번역하면 '탐욕적인' 알고리즘이다. 여기서 '탐욕적' 이라는 말은 현재 상황에서 지금 당장 좋아보이는 것만 고르는 방법을 의미한다. 그리디 알고리즘은 문제의 유형이 매우 다양하기 때문에 암기해서 잘 푼다고 할 수 없다. 대신 많은 유형을 접해보고 문제를 풀어보며 훈련을 해야한다. 그리디 알고리즘은 기준에 따라 좋은 것을 선택하는 알고리즘이므로 문제에서 '가장 큰 순서대로' , '가장 작은 순서대로' 와 같이 기준을 은근슬쩍 제시해준다. 대체로 그리디 알고리즘은 정렬 알고리즘과 짝을 이뤄 출제가 된다. 예제 3-1 거스름..

Study/Algorithm 2021.01.04

[Python/Error] 파이썬 list 정렬 (sort / sorted)

파이썬에서 리스트의 요소를 정렬하는 방법은 대표적으로 두 가지가 있다. sort 메소드와 sorted 함수 이 둘의 차이점을 비교해보려고 한다. 1. sort() 메소드 - 리스트의 메소드이다. - return값이 없다. 위의 코드처럼 작성하면 반드시 에러가 난다. 에러가 나는 이유를 찾아보니 sort() 메소드는 return 값이 없기 때문이다. arr 변수가 받아서 사용할 return값이 없어 에러가 나는 것이다. 2. sorted() 함수 1. 함수이다. 메소드와 같이 클래스에 종속되어있지 않음. 2. sort()와 다르게 return 값이 존재한다. 위와 같은 코드를 작성하고 sorted () 함수를 사용하면 에러 없이 결과가 나온다. 이름, 역할이 비슷한데 왜 비슷한걸 하나 더 만들었을까.. 싶..

Study/Python 2021.01.02

[한빛미디어/나는리뷰어다] 이것이 우분투 리눅스다

학교에서 실습할 때 우분투 리눅스를 자주 사용한다. 3년정도 리눅스를 써보니까 익숙해지긴했는데 처음엔 검은 콘솔창에 명령어를 치는 건 굉장히 낯설었다. 교수님께서 강의시간마다 항상 혼자서 리눅스도 설치해보고 서버도 구축해볼줄 알아야한다고 말씀하셨다. 왜 중요한지도 알고 왜 해야하는지도 아는데 내 하나 뿐인 노트북에는 이미 윈도우가 설치가 되어있고.. 가난한 대학생에겐 리눅스를 설치할만한 굴러다니는 노트북 또한 없다. 그래서 지금까지 리눅스를 직접 설치하고 사용하는 방법을 미루뒀었다. 한빛미디어에서 새롭게 개정한 시리즈 중 이것이 우분투 리눅스다 는 나와 같은 고민으로 리눅스를 제쳐둔 사람들을 위한 책이다. 한 대의 노트북으로 4대의 가상머신을 생성해 실무에서도 사용가능한 리눅스를 배우고 익힐 수 있다. ..

Study/Review 2020.12.20

[한빛미디어/나는리뷰어다] 한 권으로 끝내는 딥러닝 텐서플로

학교에서 딥러닝 수업은 수강중인데, 아무래도 내용이 어려운 점이 많아 자습은 필수적이었다. 자습할 때 같이 볼 책이 필요했는데 서점에 가니 정말 다양한 딥러닝 관련 서적들을 볼 수 있었다. 책을 고를 때 나는 양이 부담스럽지 않으며, 코드에 대한 설명이 잘 되어 있는 책을 원했다. 그 중에서 발견한 딥러닝 책은 바로 이번에 리뷰하게 될 " 한 권으로 끝내는 딥러닝 텐서플로 " 책의 첫 표지부터 전문적인(?) 느낌이 났다. 두께는 내가 고려한 가장 중요한 기준 중 하나였는데, 이 책은 양 부분 에서는 너무 마음에 들었다. 총 263페이지이고 가벼워서 도서관이나 학교에 가지고 다니기 편했다. 챕터는 총 10개로 구성되어있고 유기적으로 연결되어 있다. 맨 처음은 모든 책들이 그렇듯, 소개로 시작한다. 딥러닝을..

Study/Review 2020.11.22

[Git/Pycharm/Python] Pycharm(파이참)에서 commit 취소하기

pycharm을 github에 연동해서 사용 중인데 가끔 github에 push가 되지 않는 파일들이 있다. 이유야 다양하겠지만 내가 종종겪는 push 거부 문제는 파일의 '사이즈가 너무 커서'였다. 100MB까지 github에 push가 가능하지만, 그 이상은 push 할 수 없다. 이미 commit 까지 완료했는데, 이제와서 push가 안된다고 하니 난감하기 그지없다... 구글링해보니 pycharm에서는 이전에 한 commit을 취소하고 commit하기 전 상태로 되돌려주는 기능이 있었다. 지금부터 그 방법을 소개한다. 1. 파이참을 킨 화면에서 왼쪽 하단을 보면 'git' 이라고 써져있는 메뉴가 있다. 이 메뉴는 파이참을 github(또는 다른 git 관리 사이트)와 연동하게 되면 뜨는 메뉴다. ▼..

Study/Git 2020.11.16

[Git/Pycharm/Python] Pycharm에 github 연동하는 방법

자주 사용하는 파이썬 IDE인 Pycharm을 바로 github와 연동해서 사용하고 싶었다. 아무래도 github와 바로 연동이 되면 파이썬 파일을 github에 직접 업로드하거나 PuTTY로 리눅스 접속해서 업로드할 필요가 없기 때문이다. (내가 아는 방법은 이 두 가지뿐...) 한 번 해두니 pycharm 에서 commit, push도 되고, branch도 따고 pull request도 할 수 있어 굉장히 편했다. pycharm 첫 화면 맨 위 상단메뉴에서 [VCS] 클릭 밑에서 4번째에 있는 [Get from Version Control]을 클릭한다. repository url을 직접 입력해서 clone 받을 수도 있고 github 계정으로 로그인해서 연동할 수도 있다. github랑 연동하고 싶기..

Study/Git 2020.10.12

[한빛미디어/나는리뷰어다] 이것이 취업을 위한 코딩테스트다 with 파이썬

대학교 3학년이 되니까 친구들이나 동기들 사이에서 '취업'이라는 키워드가 대화의 주요 주제가 된다. 나도 슬슬 취업 준비를 해야하는 나이이다보니 잡코리아나 원티드와 같이 채용공고가 올라오는 사이트를 종종 찾아본다. 전공을 살리고 싶은 생각이라 IT계열의 머신러닝이나 데이터분석, 프로그래밍 직무를 주로 찾아보는데, 대부분 '코딩테스트'라는 걸 본다. 말그대로 이런 직무에서 일을 하려면 코딩수준이 일정 수준을 넘어야한다는 것이다. 나도 대학교에서 코딩 수업을 들어봤지만 배웠다고 다 아는 것도 아니고, 까먹은 내용도 많아서 코딩테스트가 나에게 굉장히 큰 산처럼 느껴졌다. 취업도 하기 전에 기부터 빠지는 기분이었다. 지금부터 준비하지않으면 시간이 부족할 것 같았다. 그래서 인터넷 서점을 뒤져보다가 IT 베스트셀..

Study/Review 2020.09.27