전체 글198 28. 컴포지션으로 스택(Stack)과 큐(Queue) 구현 혼공파 86강 1. 스택 # 스택(Stack) # 선입후출(First in Last out FILO) 구조를 갖는 자료 구조 # 후입선출(Last in First out LIFO) 구조를 갖는 자료 구조 # 푸시(Push): 스택 안에 자료를 넣는 행위 # 팝(Pop): 스택에서 자료를 꺼내는 행위 class Stack: def __init__(self): self.__list = [] def push(self, value): self.__list.append(value) def pop(self): output = self.__list[-1] del self.__list[-1] return output stack = Stack() stack.push(10) # [10] stack.push(20) # [1.. 2023. 6. 30. 27. 상속(Inheritance)과 컴포지션(Composition) 혼공파 83~85강 1. 상속 기본 # 초보자 단계에서는 프레임워크에서 만들어진 부모 클래스가 강제하는 상속을 사용한 자식 클래스만 이용!! class Circle: def __init__(self, 반지름): self.파이 = 3.14 self.반지름 = 반지름 def 넓이(self): return self.반지름 * self.반지름 * self.파이 def 출력(self): print("=" * 10) print("*" * 10) print("=" * 10) print(f"원의 반지름: {self.반지름}") print(f"넓이 : {self.넓이()}") print("=" * 10) print("*" * 10) print("=" * 10) class Squre: def __init__(self, 길.. 2023. 6. 30. 1. 자료구조 기초 0. 자료구조란 자료(데이터)를 어디에 어떻게 관리(검색, 순회(iterate), 저장, 삭제, 변경) 할지 자료를 담는 추상적인 틀 데이터의 형태와 쓰임에 가장 적합한 자료구조를 사용해야 컴퓨터의 자원을 효율적으로 사용 가능하다. 각 자료구조의 특징 / 장점 / 한계를 파악해야한다. * 알고리즘 : 어떤 문제를 풀기 위한 동작의 절차 Input 값을 통해 Output의 결과를 내는 것 1. 빅오 표기법 (자료구조, 알고리즘을 비교한다) 자료구조 또는 알고리즘이 문제를 해결하기 위한 가장 상한(최악)의 시간을 기준으로 한다. - 가장 큰 영향력이 있는 항만 표시 - 상수항은 무시 2. 시간 복잡도(데이터 처리에 소요되는 시간) O(1) : 입력 데이터의 크기와 상관없이 항상 일정한 시간이 걸리는 알고리즘.. 2023. 6. 29. 0. 자료 구조 시작 자료 구조 공부 이유 - Cybersecurity 석사 과정 시작 전 필수 학부 과목 공부 CS 학부과정을 전혀 듣지 않았었기 때문에 준비해야하는 것이 무엇인지 찾아보다가, 전공자들이 공통적으로 가장 필요하다고 이야기하는 자료구조 먼저 공부하기로 했다. 다행히 예전에 돈 벌때 끊어 둔 패스트 캠퍼스의 컴퓨터 공학 전공 필수 강의가 있어서 이걸로 해본다. - 개발자들 코딩 테스트 혹은 면접 시 자료구조, 알고리즘이 필수 그만큼 중요하다는 뜻? 개발할 건 아니지만 대충 왜 이렇게 코드가 구현 됐는지 이해할 때 필요할 것 같다. 프로그램 성능과 직결되는 것이 자료구조 / 학부생들 첫번째 탈주가 가장 많이 일어나는 과목 Java를 이용해서 실제 구현하는 실습까지 진행한다. 2023. 6. 29. 26. 캡슐화 혼공파 82강 1. 캡슐화 # 캡슐화 # 객체를 사용하는 사람이 허튼짓 못하게 변수와 함수를 숨기는 작업 # 인스턴스 변수와 인스턴스 함수 앞에 __를 붙이면 외부에서 접근 불가 # 외부에서 변수 확인하지도 바꾸지도 못하게 만들기 때문에 get/set 함수를 만들어서 # 사용할 수 있게 해주는 것!! 필요에 따라 추가한다 (getter, setter) class Circle: def __init__(self, 반지름): if 반지름 < 0: raise TypeError("반지름은 0 이상이어야 합니다.") self.__반지름 = 반지름 self.__파이 = 3.14 def get_반지름(self): return self.__반지름 def set_반지름(self, value): if value < 0: r.. 2023. 6. 29. 이전 1 2 3 4 5 6 7 8 ··· 40 다음