-
알고리즘에 대해 정리해보겠습니다.
일단 자잘한거 배우다가 퀀텀점프 한거 같이 난이도가 급격히 상승했습니다 ..
마치 이제 막 모험을 시작해서 슬라임도 잡고 고빌린도 잡고 해야하는데
바로 보스을 마주하여 고전하는 느낌이랄까 .. ? 어찌저찌 편법을 사용해서 넘겼는데
보스 왈 "난 사천왕중에 최약체다 !" 라고 말하면서 지옥을 선사해주고 있습니다 ㅠ
가장 애 먹었던 알고리즘을 소개하며 마치겠습니다
def find_alphabet_occurrence_array(string): # 매개변수(parameter) alphabet_occurrence_array = [0] * 26 for char in string: # 매개변수에서 받은 값음 1개씩 빼서 char에 넣어줌 if not char.isalpha(): # isalpha() = a ~ z 일경우 true continue # 다음 for문으로 넘어감 arr_index = ord(char) - ord("a") # char와 문자a를 ord를 이용해 숫자로 변환하여 해당 식으로 배열값을 구함 alphabet_occurrence_array[arr_index] += 1 # 해당 배열에 +1 증가 max_occurrence = 0 # 변수 지정 및 초기화 max_alpgabat_index = 0 # 변수 지정 및 초기화 for index in range(len(alphabet_occurrence_array)): #range(len())로 요소개수를 돌려줌 alphabet_occurrence = alphabet_occurrence_array[index] if alphabet_occurrence > max_occurrence: max_alpgabat_index = index max_occurrence = alphabet_occurrence print(max_alpgabat_index) return chr(max_alpgabat_index + ord("a")) print(find_alphabet_occurrence_array("hello my name is sparta")) # 인자(argument)