https://1ncomparable.tistory.com/208 230213 - 재귀 1. 재귀(Recursion) 재귀란? 재귀(再歸) : 원래의 자리로 되돌아가거나 되돌아옴. 재귀 함수 : 자기자신을 호출하는 함수. 반복적인 작업을 해야하는 문제를 더 간결하게 풀어낼 수 있다. 1) 재귀로 문 1ncomparable.tistory.com 재귀 함수 정리 재귀 함수는 자기 자신을 호출하는 함수이다. 반복적인 작업을 해야할때 유용하게 사용할 수 있다. sum(n) : 1부터 num까지의 합을 리턴해주는 함수 def sum(n): if n == 1: return n return n + sum(n-1) sum(5) 코드 풀이 sum(5)가 호출 sum(5) 내부에서 5 + sum(4)가 반환. sum(4)..
study/TIL
시간 복잡도 알고리즘이 입력 크기에 따라 실행되는 데 필요한 시간을 나타내는 것이다. 일반적으로 입력 크기가 증가함에 따라 알고리즘의 실행 시간이 어떻게 증가하는지를 나타낸다. 보통 빅오 표기법을 사용하여 나타낸다. 이 표기법은 입력 크기에 대한 알고리즘 실행 시간의 상한을 나타내고, 주로 알고리즘의 실행 시간이 최악의 경우에 얼마나 증가하는지를 나타내는데 사용된다. 시간 복잡도를 고려하여 효율적인 알고리즘을 구현한다면 입력값이 커짐에 따라 증가하는 시간의 비율을 최소화 한 코드를 구성했다는 의미이다. 빅오 표기법(big-O notation) 입력값(n)에 대한 수식에서 최고차항을 기준으로 알고리즘이 수행되는 최악의 시간 복잡도를 표현한다. 최고차항을 기준으로 하는 이유는 연산의 수가 극한에 수렴할때 나..
set()을 사용하기 ls = [1, 2, 3] newSet = set(ls) print(newSet) # 출력 # {1, 2, 3} Set Comprehension 사용하기 ls = [1, 2, 3] newSet = {x for x in my_list} print(newSet) # 출력 # {1, 2, 3} unpacking 연산자 사용하기 ls = [1, 2, 3] newSet = {*ls} print(newSet) # 출력 # {1, 2, 3}
break 반복문을 중단하고 싶을때 사용함. 모든 반복문을 중단하는것이 아닌 가장 가까운 반복문에서만 나온다. for i in range(1, 10): if i == 5: break print(i) # 출력 # 1 # 2 # 3 # 4 coutinue 해당 루프만 즉시 종료하고 다음 루프를 실행시키고 싶을때 사용한다. (=건너뛰기) for i in range(1, 10): if i % 2 == 0: # 짝수이면 건너뛰기 continue print(i) # 출력 # 1 # 3 # 5 # 7 # 9 pass 어떠한 명령문도 수행하지 않고 그냥 넘어가고 싶을때 사용하는 키워드. 파이썬에서는 조건문 내부에 명령문이 하나라도 존재하지 않으면 에러가 발생한다. 나중에 코드를 추가할 계획이거나 예외가 발생했을때 처리..
입력 input() 입력값 한줄을 읽어온다. 읽어온 값은 항상 문자열(string)으로 취급됨. 함수 안의 변수로 입력값을 받을 때 출력될 메시지를 설정해 줄 수 있다. a = input() b = input("Enter any value") 구분자나 띄어쓰기가 포함된 한줄 입력 읽어오기 # 공백으로 나누기 A, B = input().split() # 구분자(,)로 나누기 A, B = input().split(',') # 입력되는 값이 모두 정수일 경우 map을 사용해 한번에 정수로 바꿔줄수도 있다 A, B = map(int, input().split(',')) 여러줄 읽어오기 - 몇 줄이 입력될지 아는 경우 N = int(input()) for i in range(N): A, B = map(int, i..
채용 공고를 통해 가고싶은 기업의 분석을 해보면서 최근의 회사들이 구직자에게 요구하는 공통적인 사항을 정리해 볼 수 있었다. 기술 스택은 주로 어떤 것들을 요구하는지, 인재상은 어떠한지 등을 정리해보고 나에게 해당되는 것이 무엇인지 체크해보면서 이력서에도 어떤 방법으로 내가 가진 역량을 표현할 수 있는지 고민하게 되었다. 이전의 업무 경험으로 인해 웹 표준, 웹 접근성에 익숙하다는 점, 그리고 반응형 디자인에 익숙하다는 점이다. 또 디자이너나 비개발 직군의 동료들과의 소통도 어렵지 않게 할 수 있다는 점이 포함될 것 같다. 그리고 같은 직군은 아니지만 동종 업계 경험이 있다는게 나름의 장점일 것 같다. 보완해야하는거라면 역시 CS 지식이 포함될것같다. 또 CSR 경험이나 NEXT.js 관련 경험도 포함될..
내가 봐도 많이 부족한 이력서라 걱정스러웠는데, 멘토님이 수정해야 할 부분을 꼼꼼하게 체크해서 피드백을 주셨다. 필요한 부분에는 예시를 함께 적어주셔서 어떤 방향으로 이력서를 고쳐야 할지 알기 쉬웠다. 나는 피드백을 바탕으로 자기소개 부분에 근거가 될 수 있는 구체적인 사례를 정리했고, 트러블 슈팅 부분은 별도의 포트폴리오 영역으로 분리했다. 그래도 아예 없는 것 보다는 좀더 간략하게 작성해보고 포트폴리오에서 좀 더 길게 정리를 하려고 한다. 포트폴리오는 깃허브로 정리할지, 아니면 노션으로 정리할지 고민하다가 계속 미루게 되었었는데, 노션 포트폴리오 템플릿을 찾아보면서 작성해보려고 한다.
세션을 들으면서 가장 기억에 남는 것은 내 이력서를 통해 나의 문제 해결 역량을 표현해야 한다는 점이었다. 또 내가 해결한 방향이 정답이 아닐 수는 있지만, 이 문제를 해결하기 위해서 나는 이렇게 생각했고, 또 이렇게 생각한 이유는 무엇이고, 그래서 해결한 방법은 어떤것인지 간결하지만 구체적으로 표현해야한다는 것이었다. 물론 내가 생각한 해결책이 틀려도 상관없다는 건 아니지만, 더 중요한건 내가 문제 상황이 닥쳤을때 문제를 해결하기 위해 어떻게 생각하고 행동하는 사람이라는 것을 어필하는게 더 중요하다는 이야기였다. 이번에 이력서를 다시 쓰게 되면서 간략하게 메모해 둔 것들 덕에 나름대로 해나가고는 있지만 모호하게 느껴지는 부분들이 많이 있었는데 세션을 들으면서 이력서를 위해 집중해야하는 방향과 흐름을 정..
TIL : 자기소개 작성하기자기소개의 역할자기소개가 중요한 이유? => 지원자의 첫인상을 결정하기 때문.자기소개란지원자를 요약하는 파트핵심 경험이나 역량에 대해 요약하여 전달</ul..
TIL이력서를 위한 프로젝트 경험 정리준비하기개발 프로젝트와 관련된 경험은 일단 다 쓰기. 일단 다 쓰고 정리하는게 더 쉽다! 예시) 짧은 메모, 회고록, 블로그 글, 깃허브 커밋, PR, 프로젝트 시연영상, 캡쳐했던 gif, 프로젝트 팀 내 채팅 메시지, 회의록, 라이트하우스 점수…일단 모으는게 중요하다. 문장의 형태와는 상관 없이 한 곳에 다 모아서 정리하고 한눈에 볼 수 있도록 만..