본문 바로가기

전체보기44

HTTP 기초 모든 개발자를 위한 HTTP 웹 기본 지식을 수강하며 정리한 글입니다.인터넷 네트워크IP (Internet Protocol)지정한 IP 주소(IP Address)에 데이터 전달패킷(Packet)이라는 통신 단위로 데이터 전달패킷(Packet) Package + Bucket의 합성어 (출발지 IP, 목적지 IP 등의 데이터 집합)IP 프로토콜의 한계 비연결성  패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송 비신뢰성  패킷이 중간에 사라지거나, 패킷의 순서가 지켜지지 않을 수 있음 프로그램 구분  같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상인 경우, 구분 방법 부재해결 방법으로 등장한 TCPTCP와 UDP인터넷 프로토콜 스택 4계층애플리케이션 계층 (HTTP, FTP 등)전송 .. 2024. 9. 1.
npm과 Webpack 프론트엔드 개발자를 위한 웹팩을 수강하며 정리한 글입니다.참고 자료강의 GitHub Repository강의 자료 핸드북npmNode Package Manager의 약어Javascript Library를 관리해 주는 도구npm Homepage장점쉬운 버전 관리기존 script 태그를 찾아 일일이 버전 정보 수정npm package.json 파일에서 모든 라이브러리 버전 정보 관리 가능import 정보 찾는 과정 생략기존 script 태그 내 src 등의 입력값을 인터넷에서 검색해 입력npm install 명령어로 검색 없이 라이브러리 설치초기화 (init)npm init #초기화npm init -y #기본값으로 초기화 (추천)package.json 생성지역 설치 (install)npm instal.. 2024. 8. 25.
[LeetCode > Easy > 1] Two Sum 문제https://leetcode.com/problems/two-sum/description/Runtime: 59ms, Memory 17.99MB주어진 배열에서 합쳐서 target 값이 되는 두 개의 값을 찾는다. (두 개의 값이 아닌 인덱스를 반환)내 풀이class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: # 주어진 리스트의 index, value가 담긴 리스트 생성 pointers = list(enumerate(nums)) # value를 기준으로 리스트 정렬 pointers.sort(key=lambda x: x[1]) size = len(nums) .. 2024. 6. 23.
Python Algorithm Interview 03 - 문자열 파이썬 알고리즘 인터뷰 6장을 학습하며 작성한 글입니다.Methodsentence = "Thank you for your inviting!"  count  문자열 내 특정 문자열의 개수를 찾는 함수# y 개수 반환sentence.count('y') #2# sentence[10:]에서 y 개수 반환sentence.count('y', 10) #1# sentence[10:13]에서 y 개수 반환sentence.count('y', 10, 14) #0  find, rfind  문자열 내 특정 문자열의 인덱스를 찾는 함수 (찾는 문자열이 없다면 -1 반환)# 첫 번째 y의 인덱스sentence.find('y') #6# sentence[10:]에서 첫 번째 y의 인덱스sentence.find('y', 10) #14#.. 2024. 6. 9.
[LeetCode > Medium > 5] Longest Palindromic Substring 문제https://leetcode.com/problems/longest-palindromic-substring/description/Runtime: 4614ms, Memory 16.34MB주어진 문자열의 부분 문자열 중 가장 긴 회문을 반환내 풀이class Solution: def longestPalindrome(self, s: str) -> str: result = s[0] length = len(s) # 2개의 포인터로 모든 경우의 수를 탐색 for i in range(length): for j in range(i+1, length): # 현재 결과값보다 작으면 pass .. 2024. 6. 9.
[LeetCode > Medium > 49] Group Anagrams 문제https://leetcode.com/problems/group-anagrams/description/Runtime: 71ms, Memory 19.80MB애너그램이 같은 문자열끼리 묶은 이중 리스트를 반환내 풀이class Solution: def groupAnagrams(self, strs: List[str]) -> List[List[str]]: # 정렬한 애너그램이 key, 해당 애너그램인 문자열 리스트가 value results = dict() for s in strs: # 문자열을 정렬해 key를 구한다. sorted_s = list(s) sorted_s.sort() .. 2024. 6. 9.
[LeetCode > Easy > 819] Most Common Word 문제https://leetcode.com/problems/most-common-word/description/Runtime: 43ms, Memory 16.57MB주어진 문자열(paragraph)에서 주어진 리스트(banned)에 없는 단어 중 가장 많이 등장하는 단어 반환내 풀이import collectionsimport reclass Solution: def mostCommonWord(self, paragraph: str, banned: List[str]) -> str: # 문자열과 띄어쓰기를 제외하고, 띄어쓰기로 변경 paragraph = re.sub("[^a-z ]", " ", paragraph.lower()) # 빈도 수를 계산 co.. 2024. 6. 9.
[LeetCode > Medium > 937] Reorder Data in Log Files 문제https://leetcode.com/problems/reorder-data-in-log-files/description/Runtime: 42ms, Memory 16.56MB주어진 문자열 리스트를 아래 규칙에 따라 정렬한다.문자열은 띄어쓰기를 기준으로 분리가 가능, 분리된 첫 부분은 Key가 된다.key를 제외하고는 모두 문자열인 경우가, 모두 숫자인 경우 앞에 온다.모두 문자열인 경우는 사전순으로 나열한다.숫자는 input으로 주어진 순서 그대로 나열한다. 내 풀이class Solution: def reorderLogFiles(self, logs: List[str]) -> List[str]: letter_logs, digit_logs = [], [] for log in.. 2024. 6. 9.
반응형