class MaxAlgorithm: def __init__(self, ns): self.nums = ns self.maxNum = 0
def getMaxNum(self): self.maxNum = self.nums[0]
for n in self.nums: if self.maxNum < n: self.maxNum = n
return self.maxNum
속성 초기화
ma = MaxAlgorithm([-2, -4, 5, 7, 10, 0, 8, 20, -11])
최댓값 반환
maxNum = ma.getMaxNum() print('maxNum: {}'.format(maxNum))
class MaxAlgorithm: def __init__(self, cs): self.chars = cs self.maxchar = 0
def getMaxChar(self): self.maxChar = self.chars[0]
# ord() -> 문자열을 아스키코드로 변환시켜줌
for c in self.chars: if ord(self.maxChar) < ord(c): self.maxChar = c
return self.maxChar
chars = ['c', 'x', 'Q', 'A', 'e', 'P', 'p'] mc = MaxAlgorithm(chars) maxChar = mc.getMaxChar() print('maxChar: {}'.format(maxChar))
class MinAlgorithm: def __init__(self, ns): self.nums = ns self.minNum = 0
def getMinNum(self): self.minNum = self.nums[0]
for n in self.nums: if self.minNum > n: self.minNum = n
return self.minNum
ma = MinAlgorithm([-2, -4, 5, 7, 10, 0, 8, 20, -11]) minNum = ma.getMinNum() print('minNum: {}'.format(minNum))
class MinAlgorithm: def __init__(self, cs): self.chars = cs self.minChar = 0
def getMinChar(self): self.minChar = self.chars[0]
for c in self.chars: if ord(self.minChar) > ord(c): self.minChar = c
return self.minChar
ma = MinAlgorithm(['c', 'x', 'Q', 'A', 'e', 'P', 'p']) minChar = ma.getMinChar() print('minChar: {}'.format(minChar))
최댓값과 최솟값은 부등호 하나 차이로 값이 바뀌는데 비교해가며 코드를 만들어보는것이 재미있었다
실습 문제 문자열을 아스키코드로 변환시켜주는 ord()를 배운것이 가장 기억에 남기도한다
오늘 수강한 강의에서는 많이 헷갈리거나 어려운 것이 없었다
강의의 초반에 강사님이 말씀하신대로 다른 알고리즘보단 이해가 훨씬 쉬울거라던 말씀이 사실이었다
최댓값 최솟값은 구조가 거의 비슷하여 이해가 쉬웠다 항상 이렇기만 하면 좋겠다 ㅋㅋㅋ
내일도 마찬가지로 알고리즘 학습을 조금 더 하고 나머지 시간은 복습을 할 예정이다