파이썬 5

<릿코드(파이썬)> 240. Search a 2D Matrix Ⅱ

🤖 문제 https://leetcode.com/problems/search-a-2d-matrix-ii/ Search a 2D Matrix II - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 풀이 이진 탐색으로 풀이를 진행했습니다. 13번째 줄에서 배열의 범위를 초과한다는 오류가 발생하였습니다. end의 범위를 구할 때 1을 빼주지 않았기 때문입니다. 인덱스의 범위는 0부터 시작하고 마지막 인덱스는 배열의 길이에서 1을 빼야 하는데 아직도 한번씩 실수를 하게 ..

유물/알고리즘 2022.04.01

<프로그래머스(파이썬)> [3차] 파일명 정렬

🤖 문제 https://programmers.co.kr/learn/courses/30/lessons/17686 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr 풀이 파이썬에서 정규표현식을 활용하기 위한 re 라이브러리를 불러와서 풀이를 진행했습니다. 주어진 파일명을 head, number, tail로 쪼개는 split_name 함수를 정의하였습니다. 파일명의 문자를 하나씩 돌면서 조건을 확인하는데 i가 마지막 인덱스일 때 조건문을 잘못 설정해서 고생했습니다. 런타임 에러도 발생하였는데 rstrip(..

유물/알고리즘 2022.03.31

<TIL> 220316 해시 테이블, set

🌱 자료구조: 해시 테이블 로드팩터 = 데이터 개수 / 버킷의 개수 (TMI) 개수는 한자어이므로 사이시옷을 받치지 않습니다. 해시함수를 통해서 해싱을 하여 해시 값을 구합니다. 해싱 방법으로 나머지 연산을 활용할 수 있습니다. 해시테이블의 충돌을 해결하는 방법으로는 개별 체이닝 방식과 오픈 어드레싱(연결 리스트) 방식이 있습니다. 파이썬 for char in "문자열" 문자열은 굳이 리스트로 바꾸지 않아도 한 문자씩 반복할 수 있습니다. 리스트.sort(리버스 옵션) sorted(리스트) => 정렬 리스트 반환 딕셔너리.keys() 딕셔너리.values() 리스트.index(요소값) 리스트[인덱스] 요소 in 리스트 보다 요소 in 세트의 탐색 속도가 빠릅니다(∵리스트는 연결리스트 기반, O(1) vs..

클래스/└ TIL 2022.03.17

<IDE> 파이참에서 실행 버튼(run)이 사라졌어요!

👾 파이참으로 파이썬 파일을 만들면서 어떤 알람창이 떴는데 뭔지도 모르고 클릭해 버렸습니다. 그 뒤로 파이썬 파일 실행 버튼이 사라졌습니다. 위와 같이 보여야 하는데 저기서 run, debug 등의 기능이 사라졌습니다. python run disabled.... pycharm not showing run options.... 구글에 저와 같은 상황에 처한 사람들이 많이 보였으나 해결책은 찾지 못했습니다. 실수로 잘못 누른 어떤 계기가 있었기 때문에 파이참을 하나하나 뜯어 보았습니다. === 22/04/06 (수정) === 아래의 최초 적용했던 방법은 임시방편일 뿐이었습니다. '설정 > 에디터 > 파일 타입'에 들어가서 Python을 찾은 다음 파일 이름 패턴에 *.py 가 빠져있는 것을 확인했습니다. *..

패시브 스킬 2022.03.11

<파이썬> 파이썬 기초 문법 for 코딩테스트

🎯 { 파이썬 기초 문법 정리 } * 은 값을 반환하는 비파괴적인 명령어, 은 원본을 변경하는 파괴적인 명령어 연산자 num // 2 => 나눗셈 후의 몫을 문자열 문자열.upper() => 대문자로 바꾼 문자열을 문자열.lower() => 소문자로 바꾼 문자열을 문자열.strip() => 양옆 공백을 제거한 문자열을 문자열.find(문자) => 문자가 첫 등장하는 인덱스를 문자 in 문자열 => 문자가 있나없나 True/False 문자.split(문자열) => 문자를 기준으로 분해한 문자열을 배열로 문자열.sort() => 불가. sort()는 원본을 변경하는데 원시 값은 원본 변경이 불가능. 애초에 해당 메서드도 없음. sorted(문자열) => 문자열을 문자들로 쪼개고 정렬한 리스트를 리스트 (문자..

무기/파이썬 2022.03.11