반응형 성장하기/Python41 [알고리즘] 이분 탐색 이분 탐색(Binary Search)은 정렬된 리스트나 배열에서 특정한 값을 찾는 알고리즘입니다. 이 알고리즘은 탐색 범위를 반으로 분할하면서 값을 찾아 나갑니다. 이분 탐색은 시간 복잡도 O(log n)으로 매우 효율적인 탐색 알고리즘입니다. 아래는 이분 탐색을 파이썬으로 구현한 예시입니다: def binary_search(arr, target): left = 0 right = len(arr) - 1 while left 2023. 6. 19. [함수] bit_length bit_length()는 정수 값을 표현하기 위해 필요한 비트(bit) 수를 반환하는 메서드입니다. 이 메서드는 int 자료형의 객체에 사용될 수 있으며, 해당 객체를 이진수로 표현할 때 필요한 비트 수를 반환합니다. 아래는 bit_length() 메서드를 사용하는 예시입니다: num = 42 bit_count = num.bit_length() print(bit_count) # 출력: 6 위의 예시에서는 정수 값인 42를 변수 num에 할당하고, bit_length() 메서드를 사용하여 num을 이진수로 표현하기 위해 필요한 비트 수를 구합니다. bit_count 변수에는 6이 할당되며, 이는 42를 이진수로 표현하기 위해 6개의 비트가 필요하다는 의미입니다. bit_length() 메서드는 정수 값을 .. 2023. 6. 19. 피보나치 수열 피보나치 수열은(The Fibonacci sequence) 이전 두 항을 더하여 다음 항을 만들어가는 수열입니다. 첫 번째와 두 번째 항은 각각 0과 1로 시작하며, 그 이후의 항들은 이전 두 항을 더한 값으로 이루어집니다. 피보나치 수열을 파이썬으로 구현하는 여러 가지 방법이 있습니다. 아래는 그 중 일부 방법을 소개하는 예시입니다: 1. 재귀 함수를 사용한 구현: def fibonacci(n): if n 2023. 6. 18. [함수] Jaden Case 와 title Jaden Case는 문자열에서 각 단어의 첫 글자를 대문자로 변환하는 스타일입니다. 파이썬에서는 title() 메서드를 사용하여 Jaden Case와 유사한 결과를 얻을 수 있습니다. 하지만 주의해야 할 점은 title() 메서드는 모든 단어의 첫 글자를 대문자로 변환하는 것이 아니라, 각 단어의 첫 글자를 대문자로 변환합니다. 다른 글자들은 모두 소문자로 변환됩니다. 아래는 title() 메서드를 사용하여 Jaden Case와 유사한 결과를 얻는 예시입니다: def jaden_case(s): return s.title() text = "jaden case example" jaden_case_text = jaden_case(text) print(jaden_case_text) # 출력: Jaden Cas.. 2023. 6. 18. [함수] rjust와 ljust rjust()와 ljust() 메서드는 문자열의 정렬과 공백 채우기를 수행하는 메서드입니다. 이 두 메서드는 각각 오른쪽(rjust())과 왼쪽(ljust()) 정렬을 수행합니다. rjust() 메서드는 주어진 길이(width)에 맞게 문자열을 오른쪽으로 정렬하고, 남는 공간을 지정한 문자(fillchar)로 채웁니다. 예를 들어, text.rjust(width, fillchar)와 같이 사용합니다. ljust() 메서드는 rjust()와 유사하지만 문자열을 왼쪽으로 정렬합니다. 즉, 주어진 길이에 맞게 문자열을 왼쪽으로 정렬하고, 남는 공간을 지정한 문자로 채웁니다. 예를 들어, text.ljust(width, fillchar)와 같이 사용합니다. 다음은 rjust()와 ljust() 메서드의 간단한 .. 2023. 6. 18. [함수] zfill zfill() 메서드는 문자열의 왼쪽에 0으로 채워진 특정 길이의 문자열을 반환하는 메서드입니다. 이 메서드는 문자열의 원래 길이가 지정한 길이보다 작을 경우 왼쪽에 0을 채워서 지정한 길이에 맞춰줍니다. zfill() 메서드는 다음과 같은 구문을 가집니다: str.zfill(width) 여기서 str은 원래의 문자열이고, width는 최종 문자열의 길이를 나타냅니다. 다음은 zfill() 메서드의 예시입니다: number = "42" padded_number = number.zfill(6) print(padded_number) # 출력: "000042" 위의 예시에서는 number 변수에 문자열 "42"를 할당하고, zfill() 메서드를 사용하여 문자열을 6자리로 만들어줍니다. 결과적으로 "00004.. 2023. 6. 18. for-else for-else 문은 for 반복문 다음에 else 블록을 사용하여 반복문이 정상적으로 종료되었을 때 실행되는 코드를 구현하는 방법입니다. for-else 문은 반복문이 모든 요소를 순회하고 종료된 경우에만 실행되며, 반복문이 break 문을 통해 중단되는 경우에는 실행되지 않습니다. 일반적으로 for-else 문은 반복문에서 특정한 조건을 만족하는 요소를 찾는 등의 작업을 수행할 때 유용합니다. 반복문이 조건을 만족하는 요소를 찾으면 break 문을 사용하여 반복문을 중단시킬 수 있으며, 그렇지 않은 경우 else 블록이 실행됩니다. 다음은 for-else 문의 기본적인 구조입니다: for element in iterable: # 반복 작업 수행 if condition: # 원하는 조건을 만족하면 반복.. 2023. 6. 18. 약수 구하기 def get_divisors(n): a = [] for i in range(1,int(n**0.5)+1): if n%i == 0: a.append(n//i) a.append(i) return list(set(a)) 2023. 6. 18. [함수] strip, rstrip, lstrip strip()은 문자열의 양쪽 끝에서 특정한 문자들을 제거하는 문자열 메서드입니다. 이 메서드는 주어진 문자열에서 특정한 문자들을 찾아서 제거한 후 새로운 문자열을 반환합니다. strip() 메서드는 다음과 같은 방법으로 사용될 수 있습니다: string = " Hello, World! " # 공백 제거 stripped_string = string.strip() print(stripped_string) # 출력: "Hello, World!" # 특정 문자 제거 stripped_string = string.strip("! ") print(stripped_string) # 출력: "Hello, World" 위의 예시 코드에서 strip() 메서드를 사용하여 문자열의 양쪽 끝에 있는 공백을 제거하였습니다. 결.. 2023. 6. 18. 알파벳 상수 알파벳을 가져오는 가장 간단한 방법은 파이썬의 string 모듈을 사용하는 것입니다. string 모듈은 문자열과 관련된 여러 상수와 함수를 제공합니다. 알파벳 소문자를 가져오는 예시 코드는 다음과 같습니다: import string lowercase_alphabet = string.ascii_lowercase print(lowercase_alphabet) #출력 #abcdefghijklmnopqrstuvwxyz 알파벳 대문자를 가져오는 예시 코드는 다음과 같습니다: import string uppercase_alphabet = string.ascii_uppercase print(uppercase_alphabet) #출력 #ABCDEFGHIJKLMNOPQRSTUVWXYZ 알파벳 소문자와 대문자를 모두 가.. 2023. 6. 18. 이전 1 2 3 4 5 다음 반응형