[TIL]_20.10.21

·2020년 10월 20일
0

til

목록 보기
1/10

기억하기

  • 알고리즘 문제를 풀 때는 메모하며 구상하고 코드로 구현하자.
    - 어디서 반복을 해야하는지, 순서가 잡힌다.
    - 구현이 어렵다면 문제를 다시 세세하게 살피자, 거기에 힌트가 있는거같다.
  • 이중 for문, while문에서 break를 잘 활용하자.
    - for문, while문은 멈추지 않는다. 중간에 멈추고 싶을 때 사용하자.

코드

from itertools import combination
  • (관련 내용은 더 찾아보자..) 경우의 수를 뽑을 때 사용하면 좋을 것 같다.
h=11, m=5, s=20
print(('%d:%d:%d') % (h,m,s)) # -> 11:5:20
print(('%2d:%2d:%2d') % (h,m,s)) # -> 11: 5:20
print(('%02d:%02d:%02d') % (h,m,s)) # -> 11:05:20
  • hackerank 에서 풀었던 문제 중 기억하고 싶었던 표현이다.
zip # 순서대로 하나씩 묶어줄 때, 
enumerate # 순서가 있는 데이터에 index를 넣을 때, 
map # 순서가 있는 여러 데이터들에게 한꺼번에 같은 연산을 할 때,
sort # 순서가 있는 데이터를 정렬할 때 (key=(결과로 정렬), reverse=(True, 내림차순),
sorted # sort한 내용을 가지고 또다른 연산, 기능을 쓸 때
  • 위 함수들을 활용한 부분을 메모해야겠다... 생각보다 많이 쓴다.
from collections import Counter
Counter(list) # list내 종류별 count를 알려줌
  • 리스트 내 많은 데이터들을 집계할 때, 분포모양 등 확인이 가능하다.
from functools import reduce
reduce((func), (iterable), (초기값))
  • 리스트 내 내부 원소들을 하나씩 꺼내서 곱셈 등 연산을 연속적으로 할 때 (연산은 lambda를 이용해서 만들 수 있고 다른 함수에서도 많이 활용됨.)
str.startswith((시작시점에서 탐색할 문자열, 패턴), 위치)
  • 문자열에서 찾고자 하는 패턴을 찾는 데 그 문자열의 시작점에서 찾는다.
profile
매일 코딩하기 & 기록하기

0개의 댓글