서버에 대한 클라이언트 요청은 웹 사이트를 방문하기 위해 브라우저에 입력하는 URL과 유사합니다.
서버의 응답은 웹 페이지의 일반적인 그래픽 렌더링이 없는 일반 데이터입니다.
라고
킹무위키에선
REST는 모든 '네트워크'를 위한 것이므로 네트워크가 구성된 곳이라면 어느 곳이든 사용이 가능하지만 현실적으로 99.99%의 네트워크는 우리가 소위 '인터넷'이라고 부르는 HTTP 기반 네트워크이므로 REST API라고 하면 HTTP에 쓰이는걸 의미하는 경우가 많다. 심지어 그냥 'API'라고 부르면 이 REST API를 의미하는 경우도 많아졌다.
일단 네트워크에서 받으면 레스트다 로 이해하면 뉴비는 되나?
남의 것 가져오는 것인 만큼 출처표기 같은것도 중요한 모양인데 기업체에선 전문적으로 그거 검수하는
def solution(id_pw, db):
for i in db:
if id_pw[0] in i:
if id_pw[1] == i[1]:
return "login"
else:
return "wrong pw"
if id_pw[0] != i[0] and id_pw[1] != i[1]
return "fail"
입력값이 2배로 늘어났을 때 문제를 해결하는 데 걸리는 시간은 몇 배로 늘어나는지를 보는 것
입력값이 늘어나도 걸리는 시간이 덜 늘어나는 알고리즘이 좋은 알고리즘이겠다
방법 두개를 배웠다
예시는 "최댓값 찾기 알고리즘"의 시간 복잡도 판단해보기
input = [3, 5, 6, 1, 2, 4]
def find_max_num(array):
for num in array:
for compare_num in array:
if num < compare_num:
break
else:
return num
result = find_max_num(input)
print("정답 = 6 / 현재 풀이 값 = ", find_max_num([3, 5, 6, 1, 2, 4]))
print("정답 = 6 / 현재 풀이 값 = ", find_max_num([6, 6, 6]))
print("정답 = 1888 / 현재 풀이 값 = ", find_max_num([6, 9, 2, 7, 1888]))
이 파일은 숫자를 다른 숫자들과 하나하나 비교해 최대값을 찾는다, max면 중단함
시간이 얼마나 걸릴지 분석법은 '한줄이 실행되는걸 1번의 연산이라 생각' 하란다
for num in array: # array 의 길이만큼 아래 연산이 실행
for compare_num in array: # array 의 길이만큼 아래 연산이 실행
if num < compare_num: # 비교 연산 1번 실행
break
else:
return num
그래서 (어레이[입력값] 길이만큼 연산)**2*비교연산이 되는데
어레이 길이 6, 비교연산 1번
6*6번이 실행된다
36으로는 표현하지 않는다,
위에서 입력값은 보통 N으로 쓰는데 ,N의 크기와 시간의 상관관계를 시간복잡도라해서
수식으로 표현. 숫자가 얼마나 큰지 보다는 거점사이에 여러길 있는 문제 마냥 이해하면 될것같다
두번쨰
def find_max_num(array):
max_num = array[0]
for num in array:
if num > max_num:
max_num = num
return max_num
result = find_max_num(input)
print("정답 = 6 / 현재 풀이 값 = ", find_max_num([3, 5, 6, 1, 2, 4]))
print("정답 = 6 / 현재 풀이 값 = ", find_max_num([6, 6, 6]))
print("정답 = 1888 / 현재 풀이 값 = ", find_max_num([6, 9, 2, 7, 1888]))
리스트를 하나씩 돌면서 num 과 max_num 값을 비교하는 함수
max_num = array[0] # 연산 1번 실행
for num in array: # array 의 길이만큼 아래 연산이 실행
if num > max_num: # 비교 연산 1번 실행
max_num = num # 대입 연산 1번 실행
주어진 걸로만 보자면
max_num 대입 연산 1번
array의 길이 X (비교 연산 1번 + 대입 연산 1번)
아랫 거는 if라 되는거 하나, 안되는거 하나 총 2개
즉1.과 2.을 합쳐 1+2*N
2N+1만큼 걸림
참고로 같은 함수다.
아예 다른 계산식이 나와 버리는데
식만 보자
제곱이라 입력값 변동이 조금만 생겨도 어마어마한 차이가 난다
나무위키를 보니 방식도 참 많은데
1에선 거의 대동소이하다
나도 하면서 이걸 왜 신경쓰는가 생각했는데 위키 예시에서 쓰는 사람은 수초~수분 걸리는데 불편을 몰라도