본문 바로가기
728x90

Python9

문자열 섞기/ Python/ 3가지 방법 - 설명 기본def solution(str1, str2): answer = '' for i in range(len(str1)): answer+=str1[i]+str2[i] return answerstr1과 str2의 문자열 길이가 동일하기 때문에 len을 활용해 쉽게 접근할 수 있는 풀이방법zip(a, b)두 개의 리스트를 하나로 묶어줌(zip)def solution(str1, str2): answer='' for s1,s2 in zip(str1,str2): answer+=s1+s2 return answer저는 여기서 갑자기 dict이 생각났습니다. dict과 zip의 차이점은 뭘까요? 먼저 dict이란?키-값 쌍을 저장하는 데이터 구조각 키는 유일하며, .. 2024. 9. 18.
시간복잡도 - 개념 시간복잡도를 계산하는 방법알고리즘의 기본 단계 분석: 알고리즘이 수행하는 기본 작업(예: 비교, 덧셈, 루프 등)의 수를 세어야 함입력 크기에 대한 함수 작성: 입력 크기에 따라 기본 작업의 수가 어떻게 변하는지 나타내는 수식을 만듭니다. 입력 크기는 보통 n으로 표기됨주요 작업의 기여도 평가: 여러 단계가 있는 알고리즘에서는 각 단계의 기여도를 평가합니다. 가장 큰 기여도를 가진 단계가 전체 시간복잡도를 결정함최대값을 추출하고 단순화: 시간이 가장 많이 소요되는 부분을 기준으로 시간복잡도를 단순화하여 표기합니다. 이때 O(n), O(n^2), O(log n) 등의 표기법을 사용함시간복잡도는 O(n)왜냐하면 n개의 요소를 반복def example1(arr): for i in range(len(arr.. 2024. 9. 13.
프로그래머스/ python/ 등차수열의 특정한 항만 더하기 + 설명 def solution(a, d, included): answer = 0 for i in range(len(included)): if included[i] == True: answer += a+i*d return answer 문제 설명(첫 번째 예시)등차수열이란?첫 번째 항이 a, 공차가 d인 등차수열은 다음과 같습니다:여기서 공차란? 연속된 두 항 사이의 일정한 차이(이해가 안된다면 예시 설명 고!)a, a + d, a + 2d, a + 3d,..., a + (n-1)d여기서 a는 첫 번째 항, d는 공차이며, n번째 항은 a + (n-1) d로 계산됩니다.문제의 요구 사항주어진 included 배열은 각 항이 포함될지 여부를 나타냅니다.inclu.. 2024. 9. 10.
코딩테스트 / 문자열 섞기/ Python + 설명 def solution(str1, str2): answer='' for i in range(0,len(str1)): answer += str1[i] + str2[i] return answer 설명answer=' '를 해주는 이유는 뭘까? 저 코드를 안 넣어주면 UnboundLocalError: local variable 'answer' referenced before assignment라는 에러가 발생한다. UnboundLocalError란? 묶여있지 않은 위치 에러 -> 정확한 위치를 알수 없어서 발생한 에러(answer 같은) 변수를 함수 내부에서 먼저 읽기 전에 값을 할당하려고 할 때 발생한다. 이는 함수 내부에서 변수를 사용하기 전에 해당 변수를 초기화하지 않아서 발생.. 2024. 7. 11.
코딩 테스트 대소문자 바꿔서 출력하기/ Python + 추가 문제, 설명 str = input()str = str.swapcase() # str.swapcase() = 대문자 -> 소문자/ 소문자 -> 대문자print(str)  str.___()str.upper(): 문자열을 모두 대문자로 변환text = "hello"print(text.upper()) # 출력: "HELLO"str.lower(): 문자열을 모두 소문자로 변환text = "HELLO"print(text.lower()) # 출력: "hello" 추가 문제입력: aBcd를 출력: Abcd로 변환하기첫 번째 글자는 대문자로, 나머지 글자는 소문자로 변환하는 문제str = input()def convert_string(str): result = str[0].upper() + str[1:].lower() .. 2024. 7. 8.
코딩테스트 문자열 돌리기/Python + string 정리 string에 관련된 코딩 테스트가 많길래 기초를 정리해 보겠습니다!코딩테스트 문자열 돌리기/Pythonfor i in input(): print(i) input() 함수가 반환한 문자열을 for 루프를 사용하여 하나씩 순회합니다.문자열은 시퀀스 타입(순서가 있는 데이터 타입)이며, for 루프를 통해 문자열의 각 문자를 차례대로 접근할 수 있습니다. 예를 들어, "abcde"라는 문자열이 입력되면, for 루프는 각 문자 'a', 'b', 'c', 'd', 'e'를 순서대로 변수 i에 할당합니다. print(i) 함수: print(i)는 현재 i에 할당된 문자를 출력하고, 기본적으로 출력 후 줄바꿈(\n)이 포함됩니다. str.___()str.strip(): 문자열 양쪽의 공백을 제거text = .. 2024. 7. 8.
728x90