전체 글

웹 백엔드취준생 입니다.
· 항해99
RestController vs Controller Controller: 뷰 템플릿로 응답을 한다. (content-type: text/html) RestController: 객체로 보낼경우 application/json으로 자동으로 보낸다 content-type 종류 https://www.iana.org/assignments/media-types/media-types.xhtml Media Types www.iana.org 데이터 핸들링 jdbcTemplate에서 JPA로 발전을 한 형태 JPA는 ORM으로 객체로 데이터를 핸들링 한다. HTTP 응답코드 말그대로 통신이 성공적으로 받아왔는지 실패했으면 왜 실패한지 약속한 코드들이다. HTTP 메소드 컨트롤러 메소드에 어노테이션으로 GetMapping, ..
로그인 세션때매 다날라가서 재작성 필요
DNS(Domain Name Server) 클라이언트가 주소를 아는 과정 로컬 DNS 서버 -> example.com 요청 1. Root DNS Server -> .com NS 반환 (최상단 도메인 반환) 2. TLD DNS Server -> example.com NS 반환 (2차 도메인 반환) 3. SLD DNS Server -> example.com (서브 도메인 반환) 전체를 FQDN(Full Qualified Domain Name) 명칭 .com Root (최상단 도메인) example.com TLD (2단계 도메인) www.example.com SLD (서브 도메인) api.www.example.com 도메인 이름 클라이언트가 DNS를 통해 주소를 받았으면 TTL 설정에 따라 캐싱이 됨 TTL:..
· 항해99
문제 접근 🤔 책을 먼저 보고 후에 봐서 방향성과 코드는 알았다. 총 떡의 길이를 자른 값이 n보다 크면 더 큰 수로 빼야해서 오른쪽 (큰쪽으로 이동) 총 떡의 길이를 자른 값이 n보다 작으면 더 작은 수로 빼야해서 왼쪽 (작은쪽으로 이동) 놓쳤던 부분 😅 이진 탐색은 응용이 어렵다. 안보고 했으면 불가능했었다. 코드 😁 첫 번째 코드 # 201 Page n, m = map(int, input().split()) k = list(map(int, input().split())) start = 1 end = max(k) # 떡 중의 최대 길이 while start m: start = mid + 1 else: end = mid - 1 2512번: 예산 2512번: 예산 첫째 줄에는 지방의 수를 의미하는 정수 ..
· 항해99
문제 접근 🤔 책에서 이진 탐색에 대해 알려줘서 이진 탐색을 그대로 적용 했다. 놓쳤던 부분 😅 파이썬 라이브러리 bisect를 사용하면 더욱 단축 시킬 수 있다. 코드 😁 첫번 째 코드 # 197P import sys def component_search(array, target_array, low, high): result = [] for target in target_array: find_check = False low = 0 high = len(array) - 1 while low target: high = mid - 1 elif array[mid] < target: low = mid + 1 if find_check: result.append("yes") else: result.append("no..
· 항해99
버블정렬 # 옆에 있는 값 끼리 계속 비교하면서 # 큰 값을 뒤로 보낸다 (오름차순) def bubble_sort(ary): # 마지막은 마지막전이랑 비교 하니 빼준다. ary_max = len(ary) - 1 # 정렬 해야 할 횟수만큼 반복 for i in range(ary_max): # 버블정렬 후 i 만큼 뺀다, 뒤에는 정렬이 된 값이 있기때문 # 첫 정렬할때 4번, 그 다음은 3번.. 진행 cnt = ary_max - i for y in range(cnt): # 제일 큰 값을 뒤로 보낸다. # y, y+1이면은 밑에 처럼 작동된다. # 0 1 # 1 2 # 2 3 # 3 4 if ary[y] > ary[y + 1]: ary[y], ary[y + 1] = ary[y + 1], ary[y] retur..
· 항해99
최대 힙 자료구조 삭제를 한번 더 하면은 루트값이 정상이 아니였다. 조건문 추가 해주니까 정상적으로 작동 하는 것 같다. 왼쪽 오른쪽도 비교해서 제일 큰값이랑 스왑을 해야지 삭제 처리가 제대로 된다 # 최대 힙 class Heap: def __init__(self, nums=[]): self.nums = [None] + nums def heap_up_sort(self): # 현재 위치 cur = len(self.nums) - 1 # 부모노드 위치 parent = cur // 2 while parent > 0: # 현재값이 부모보다 클 경우, 스왑 if self.nums[cur] > self.nums[parent]: self.nums[cur], self.nums[parent] = self.nums[pare..
blablax5
blablax5