분류 전체보기 182

leetcode 238. Product of Array Except Self 리트코드 238. 자신을 제외한 배열의 곱

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 leetcode.com/problems/product-of-array-except-self/ Product of Array Except Self - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next ..

leetcode 15. 3Sum 리트코드 15. 세 수의 합 문제 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 leetcode.com/problems/3sum 3Sum - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 입력 : 정수로 된 리스트 출력 : 정수로 된..

leetcode 121. Best Time to Buy and Sell Stock 리트코드 121. 주식을 사고팔기 가장 좋은 시점 문제 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 주식을 사고팔기 가장 좋은 시점 입력: 정수로 된 리스트 출력: 정수 문제 요약: 리스트 안의 숫자 2개를 골라서 그 차가 가장 큰 값을 출력 (순서 있음) 유의 사항: 유의사항을 보면 제시된 리스트의 길이와 숫자의 크기가 매우 크다. 효율성을 고려해야 한다. 생각 과정 기본적으로 가장 큰 수에서 가장 작은 수를 빼면 차이가 가장 크다. 그러나 리스트의 순서에 의미가 있기 때문에 그냥 정렬을 하면..

딕셔너리에서 value를 가지고 key 얻기

파이썬의 해시 테이블 자료형인 딕셔너리에서 key를 가지고 값을 얻는 방법은 .get() 메서드를 사용하거나 dict_name[key] 형태로 index 하는 것이다. (참고: rollingsnowball.tistory.com/108) 그런데 value를 알고 있을 때, 그 값을 가지는 key를 찾는 것은 좀 더 까다롭다. 1. dict_name.items()를 통해서 key, value 쌍을 만들로 for 반복문을 돌려, 일일이 원하는 값과 같은지 비교한다. my_dict ={"John":1, "Michael":2, "Shawn":3} def get_key(val): for key, value in my_dict.items(): if val == value: return key return "There..

Programming/Python 2021.05.07

leetcode 1. Two Sum 리트코드 1. 두 수의 합 문제 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 leetcode.com/problems/two-sum/ 입력: 정수 리스트, 정수 1개 출력: 정수 리스트 문제 요약: 리스트에서 두 개의 수를 더하면 target이 되는 원소의 인덱스를 리턴 유의 사항: 1. 두 원소의 값이 아니라 인덱스를 한다는 점 2. 조건을 만족하는 답이 딱 하나 3. 그리고 리스트의 길이 최대 1000개, 타겟 값 10**9 등 단위가 매우 크기 때문에 효율성에 신경을 ..

[AI class day13] 파이썬 매트플롯, 씨본 python matplotlib, seaborn TIL

감상 : 지난 시간에 배운 numpy와 pandas를 바탕으로 만든 표를 보다 직관적으로 인식하기 좋은 그래프로 보여주는 부분. 이 역시 에서 배웠던 내용에 복습이기는 하다. 그런데 numpy나 pandas와는 달리 차근차근 배웠던 기억이 없고, 이후에 EDA 과제를 하거나 ML report를 작성할 때도, 항상 어떻게 써야 내 의도에 맞는 그래프를 출력할 수 있는지 헷갈렸던 기억이다. 이번 수업에서 딱 2줄 부터 시작해서 한 줄씩 더해가며 그래프를 업그레이드하는 방식으로 진행한 수업이 내용을 이해하고, 외우는데 아주 효과적이었던 것 같다. matplotlib.pyplot function overview (공식) seaborn API reference (공식) matplotlib cheat sheets ..

Data/EDA 2021.05.07

책 <인공지능을 위한 수학> 정리

을 들을 때도 2일 정도 강의가 있었다. 연세대학교 이상엽 교수님이 진행해 주셨는데, 실시간으로 수강생들의 수준에 맞게 속도와 수준을 조절하면서 강의해 주셔서 어려운 내용임에도, 어렵지 않게 감을 잡을 수 있었다. 수강생의 대부분이 computer science를 전공하지 않은 데다가, 문과생이 많았기 때문에 원래 커리큘럼에 있는 내용을 다 다루지는 못하고 데이터 분석과 관련 있는 선형대수학 개념 위주로 가르쳐 주었던 기억이 난다. 그런데 이번에 수강하고 있는 의 경우는 대부분 CS를 전공한 학부졸업 ~ 석사생이 많고, 그 수준에 맞게 수학 강의 부분도 진행이 되었다. 그나마 지난 번에 강의 들은 게 있어서, 완전히 처음 듣는 개념은 아니긴 했지만, 선형대수학이라는 분야 자체를 지난번에 처음 들어본 내가..

Math 2021.05.07

leetcode 5. Longest Palindromic Substring 리트코드 5. 가장 긴 팰린드롬 부분 문자열

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 가장 긴 팰린드롬 부분 문자열 입력: 문자열 출력: 문자열 문제 요약: 주어진 문자열에서 찾을 수 있는 가장 긴 팰린드롬을 출력하기 유의 사항: 예를 보면 "a", "ac" 가 입력일 때 모두 "a"가 출력되었다. len(a)이 1이거나 같은 팰린드롬이 없을 때는 a[0]이 출력되는 듯 그리고, 문자열 내에 대문자/소문자 모두 들어가 있다고 하니까 .lower()를 통해 모두 소문자로 변환해줘야할..

leetcode 49. Group Anagrams 리트코드 49. 그룹 애너그램 문제 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 그룹 애너그램 입력: 문자열로 된 리스트 출력: 문자열로 된 리스트의 리스트 문제 요약: 애너그램은 문자를 재배열하여 다른 뜻을 가진 단어로 바꾸는 것을 뜻한다고 한다. (출처: 파이썬 알고리즘 인터뷰) 예를 들어 'eat' 과 'tea' 와 같은 것이다. 유의 사항: strs[i].length == 0 인 경우도 포함된다. 즉, 아무것도 없는 빈 원소까지 고려해서 짜야 한다. 생각 과정 같은 애..

leetcode 937. Reorder Data in Log Files 리트코드 937. 로그 파일 재정렬 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 리트코드 로그파일 재정렬 입력: list (string) 출력: list (string) 문제 요약: string이 원소인 리스트를 받아 정렬만 해서 다시 리스트로 출력한다. 그런데, 정렬의 기준이 조금 달라서 그 기준에 맞춰 정렬해야 한다는 점이 포인트 생각 과정 일단 각 원소를 띄어쓰기를 기준으로 쪼개서 리스트로 만든 다음, 각 로그의 첫번째 부분은 식별자라고 해서 식별자와 나머지로 나눠보았다..

leetcode 819. Most Common Word 리트코드 819. 가장 흔한 단어 문제 풀이

책에서 다룬 리트코드 문제들을 풀이한 포스팅이다. 문제는 모두 리트코드에 출제된 문제들이며, 직접 풀었지만, 책에서 주는 힌트와 풀이 과정들을 참고한 경우가 많다. 이곳은 정리한 책에 나온 문제에 대한 목록과 해설을 정리한 공식 깃허브 페이지 이며, 다음 포스팅은 내가 푼 문제 풀이 목록을 정리해 놓았다. 문제 leetcode.com/problems/most-common-word/ 입력 : string data type인 paragraph , list data type인 banned 출력: string data type 문제 요약: 가장 자주 등장하는 단어를 고른다. 단, 따로 뽑아 놓은 banned 리스트에 있는 단어는 제외하고. 생각 과정 1. 하나의 문장을 단어 단위로 쪼개고, (.split()) ..

[AI class day12] 파이썬 판다스 python pandas TIL

감상 : 어제에 이어 파이썬 라이브러리 판다스를 공부하고, 적용하는 연습을 해본 시간 마찬가지로 지난 데이터 분석 과정 수강 때 공부했던 내용이라 복습을 하는 정도였다. 2. 파이썬으로 데이터 주무르기, pandas pandas를 활용해서 데이터프레임을 다뤄봅시다. 수업에 사용된 covid 데이터 I. pandas 시작하기 import pandas as pd II. pandas로 1차원 데이터 다루기 - Series 1-D labeled array 인덱스를 지정해줄 수 있음 s = pd.Series([1,4,9,16,25]) s 0 1 1 4 2 9 3 16 4 25 dtype: int64 #인덱스 지정이 가능하기 때문에 딕셔너리로 생성이 가능함 t = pd.Series({'one':1, 'two': 2..

Data/Pandas 2021.05.05

[AI class day11] Git TIL

감상: T academy 와 ssacxfast campus, codecademy에서 무료 3번이나 수강했던 git 활용 강의 프로그래머스 데브 코스 강의에 또 나왔다. 그만큼 중요하고, 또 그만큼 능숙하게 활용하는 것이 쉽지 않다는 뜻이리라. 특강만 계속 들었을 뿐 나도 사실 꾸준히 커밋을 하지 못했다. 계속 수업을 듣다보니 개인 프로젝트를 진행하기 버거웠고, 팀으로 작업한 적이 별로 없어서. 그렇게 안쓰면 또 까먹고 못쓰게 되는 거라 다들 깃헙 블로그라도 하라 하는 것 같다. 이번 주는 비교적 공부하는 내용이 가벼우므로, 이를 활용해 알고리즘 복습을 하기로 했다. 책을 보면서 목차에 따라 차근 차근 리트코드 문제를 풀어보는 중. 오늘은 6장 문제 3개를 풀어보고 복습과 정리가 필요한 부분은 따로 블로그..

Dev/Git 2021.05.04