Computer Science 156

알고리즘 1강 :: 모든 자료구조 구현은 배열과 연결리스트

알고리즘 1강을 보며 배운내용 알고리즘 준비 자료구조 프로그래밍 언어 능력 수학적 능력 이 있으면 잘 할 수 있다 컴퓨터 과학 컴퓨터로 문제를 해결하기 위한 학문 즉 알고리즘은 문제 해결을 위한 효율적인 레시피 컴퓨터로 문제를 풀기위해 알고리즘이 필요하다 자료구조 컴퓨터에서 데이터 사이 논리적 관계 표현, 조직화 자료구조, 알고리즘을 잘 이용하면 좋은 프로그램 만들 수 있다 기본 자료구조 선형 한 줄로 줄 세울 수 있는 자료구조 배열, 연결리스트, 스택, 큐 비선형 줄 세울 수 없는 자료구조 트리, 그래프 각 자료구조의 구성과, 삽입, 삭제 방법을 알자 트리, 그래프는 익숙치 않다 모든 자료구조는 배열 혹은 연결 리스트로 구현한다 아~ 단순해서 좋다 트리 노드의 차수: 각 노드가 가지고 있는 자식 노드 ..

알고리즘 :: 그래프, 그래프 알고리즘, BFS, DFS

그래프 정점: 여러가지 특성을 가지는 객체 간선: 정점들 간의 관계 그래프 종류 무방향그래프: 정점간 방향이 없는 그래프 방향 그래프: 정점간 방향이 있는 그래프 그래프 특징 자기 자신을 향하는 간선은 없다 중복된 간선은 없다 그래프 표현 방식 인접행렬 - 무방향 그래프 대각선 기준으로 대칭이다 가중치 없을 때 0, 1로 표현 인접행렬 - 무방향 그래프 feat. 가중치 가중치 있어서 가중치 인접행렬 - 방향 그래프 인접행렬 - 방향 그래프 feat 가중치 # 그래프 표시 # Dictionary graph = {0: {1: 5, 2: 1, 3: 1}, 2: {1: 4}, 3: {0: 3}} # List graph = [[0, 5, 1, 1], [0, 0, 0, 0], [0, 4, 0, 0], [3, 0,..

자료구조 :: 스택으로 풀 수 있는 문제

엘리스 코딩 자료구조에서 배운 내용 stack(스택) class Stack: ''' 이전 실습에서 작성한 Stack 클래스 코드를 사용합니다. ''' def __init__(self) : ''' 자료를 저장할 공간(리스트) myStack을 만듭니다. ''' self.myStack = [] def push(self, n) : ''' stack에 정수 n을 넣습니다. ''' self.myStack.append(n) def pop(self) : ''' stack에서 가장 위에 있는 정수를 제거합니다. 만약 stack에 아무 원소가 없다면 아무 일도 하지 않습니다. ''' if self.empty() == 1: return self.myStack.pop() def size(self) : ''' stack에 들어..

인공지능 강의 12화 :: 신경회로망, 학습방법, 퍼셉트론

인공지능 강의 12화를 보며 배운내용 KEYWORDS 인공 신경회로망: 생물학 신경체계 이해를 바탕으로 지능적 문제해결에 사용하기 위한 구조 및 학습 방법을 모델링 활성함수: 연결가중치가 적용된 입력이 뉴런에 전달되었을 때 뉴런의 출력을 활성활 할 것인지, 활성화할 경우 어떤 값을 출력으로 전달할 것인지 결정하는 함수 피드포워드 신경망: 신호가 입력층에서 출력층으로 전달되는 신경망 구조 순환 신경망: 뉴런의 출력이 입력으로 들어갈 수 있는 순환연결 신경망 구조 준지도학습: 라벨이 지정되지 않은 큰 규모 학습표본 집합과 작은 규모의 라벨이 지정된 학습표본 집합을 사용하는 학습 방법 배치학습: 학습 표본집합 내의 각각 표본에 의한 연결가중치 변화분을 누적하고, 전체 학습 표본에 대해 누적 변화량을 반영하여 ..

JavaScript 유저 Python 배우기 :: 클래스, 인스턴스, 상속, 객체

엘리스의 도레미 파이썬에서 배운 내용 class(클래스) class는 붕어빵 기계의 틀이라고 생각하자 사용법은 자바스크립트와 비슷해 보인다 클래스 사용 예시 파이썬에서 메서드 만들려면 self를 넣어주면된다 self 없어도 작동하지만 관례처럼 붙인다고 한다 예전에는 안돌아갔다는 이야기 class Human: name = "Bob" age = 10 # 메서드 def exercise(self): print("축구") this 대신 self 자바스크립트에서는 프로퍼티를 가져오려면 this를 사용했다 여기서는 메서드 만들어줄 때 사용한 self를 사용하는가보다 self 사용 예시 class Bbread: taste = "밀가루" def eat(self): # this 대신 self print(self.taste..

JavaScript 유저 Python 배우기 :: 함수, 모듈

엘리스의 도레미 파이썬에서 배운 내용 내장 함수 print() console.log() 같은 녀석일까 아무튼 콘솔로 보이는 녀석 input() 입력받기 참 좋다 자바스크립트에서는 readline 어쩌구 저쩌구 했는데.. max() & min() 최댓값 최솟값 구하는 것 Math 안가져와도 되고 sum() 얼마나 편하니 sum() 자바스크립트도 넣어주라 len() 길이 구하는거 자바스크립트의 length 헷깔린다 이친구는 사용자 지정 함수 function이 아닌 def를 사용한다 사용 문법도 if나 for 처럼 콜론(:)과 들여쓰기로 사용하네 define(정의를 하는 것) def plusDouble(a, b): c = a + b return 2 * c print(plus(3, 4)) Method(메서드) ..

JavaScript 유저가 보는 Python 기본 자료형

엘리스의 도레미 파이썬에서 배운 내용 list.pop(i) 우와 인덱스를 지워버리는구나.. 이런게 있다니 인덱스(i)를 넣어두 되고 안넣으면 마지막 원소 제거하고 반환 my_list = [1, 2, 3, 4, 5] print(my_list.pop(0)) # 1 print(my_list.pop()) # 5 seq.count(d) 원소 갯수도 알려주는 것도 있다 my_seq = [2, 2, 2, 4, 4] print(my_seq.count(2)) # 3 str.split(c) 이건 자바스크립트와 비슷 다른 점은 한 글자 한글자 자를 때 split()속 콤마를 넣지 않는다 my_str = "1 2 3 4 5" print(my_str.split()) # ['1', '2', '3', '4', '5'] str.jo..

728x90