목록Computer Engineering (4)
소란한 블로그
st-lab.tistory.com/189 2진수의 수와 음수 표현법 [1의 보수와 2의 보수] 안녕하세요. 오늘은 프로그래밍이 아닌 컴퓨터의 연산에 대해 이해해보고자 합니다. 우리가 흔히 프로그래밍을 할 때는 그나마 사람에 가까운 언어로 된 고급언어들로 작성을 하지만 실제 컴퓨 st-lab.tistory.com

스택 (Stack) : 가장 나중에 쌓은 데이터를 가장 먼저 빼낼 수 있는 데이터 구조 ➔ LIFO (Last In First Out) 스택은 LIFO(Last In, Fisrt Out) 또는 FILO(First In, Last Out) 데이터 관리 방식을 따름 - LIFO: 마지막에 넣은 데이터를 가장 먼저 추출하는 데이터 관리 정책 FILO: 처음에 넣은 데이터를 가장 마지막에 추출하는 데이터 관리 정책 대표적인 스택의 활용 - 컴퓨터 내부의 프로세스 구조의 함수 동작 방식 주요 기능 - push(): 데이터를 스택에 넣기 - pop(): 데이터를 스택에서 꺼내기 Stack의 구조와 Process Stack : 스택의 구조는 프로세스 실행 구조의 가장 기본 # 재귀 함수 => 스택 def recurs..
큐 (Queue) : 가장 먼저 넣은 데이터를 가장 먼저 꺼내도록 하는 데이터 구조 FIFO(First-In, First-Out) 또는 LILO(Last-In, Last-Out) 방식 스택(stack)과 꺼내는 순서가 반대 +) Visualog Terminologies Enqueue : 큐에 데이터를 넣는 기능 Dequeue : 큐에서 데이터를 꺼내는 기능 Python Queue Library Queue() : 가장 일반적인 큐 자료 구조 (FIFO) LifoQueue() : 나중에 입력된 데이터가 먼저 출력되는 구조 (LIFO) ➔ 스택 구조 PriorityQueue() : 데이터마다 우선순위를 넣어서, 우선순위가 높은 순으로 데이터 출력 01. Queue() import queue # queue 선언..
배열 (Array) : 데이터를 나열하고, 각 데이터를 인덱스에 대응하도록 구성한 데이터 구조 파이썬에서는 리스트 타입이 배열 기능을 제공함 배열이 필요한 이유 같은 종류의 데이터를 효율적으로 관리하기 위해 사용 같은 종류의 데이터를 순차적으로 저장 - 장점 : 빠른 접근 가능 ➔ 첫 데이터의 위치에서 상대적인 위치로 데이터 접근(인덱스 번호로 접근) - 단점 : 데이터 추가/삭제의 어려움 ➔ 미리 최대 길이를 지정해야 함 파이썬에서의 배열: 리스트 # 1차원 배열 data_list1 = [1, 2, 3, 4, 5] # 2차원 배열 data_list2 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] print(data_list2[0]) print(data_list2[0][0]) print..