성장일기

내가 보려고 정리하는 공부기록

자료구조 13

[Data Structure] CHAP 2. Arrays (배열) - C언어 ver.

지난 챕터 linear list에 이어 이번 챕터에서는 배열에 대한 내용을 기록하려고 한다. ✅ 배열의 ADT ✅ 실행 함수(add, remove 등)에 따른 big-O() 차이 위 내용에 대해 정리하고, Structures and Unions에 대해 간단하게 정리하려고 한다. 1. 배열의 ADT 저번 list의 ADT와 마찬가지로 배열도 ADT로 나타낼 수 있다. 배열의 main method로는 get(int i) >> index i인 요소를 삭제하지 않고 값만 리턴 set(int i, obj o) >> index i인 요소의 값을 o로 대체하고 대체 전 값 리턴 add(int i, obj o) >> index i에 새로운 요소 o 추가 remove(int i) >> index i값 제거 후 index..

자료구조 2023.07.04

[Data Structure] CHAP 1. Linear Lists (선형리스트) - C언어 ver.

이번 챕터에서는 다양한 자료구조 중에서 Linear List에 대해 기록할 예정이다. Linear List에 대해 알려면 List가 무엇인지 먼저 알아야 하기 때문에 ✅ List란 무엇인가? ✅ Linear List란 무엇인가? 이상의 두 학습목표를 가지고 학습할 것이다. 1. List란? list는 일정 순서를 가지고 나열된 데이터를 의미한다. 리스트의 의미를 알았을 때 문득 리스트와 배열의 차이점이 무엇일까 하는 궁금증이 생겨서 간단하게 찾아봤다! 1-1. 배열과 리스트 결론적으로 정리를 하자면 배열의 단점을 개선하고, 배열의 특징인 인덱스의 개념을 없앤 것이 리스트라고 한다. 즉 둘은 독립적인 게 아니라는 거! 자바로 자료구조를 배웠을 때 교수님께서 list 표현방식 중 하나가 배열이라고 하셨다. ..

자료구조 2023.07.03

[Data Structure] CHAP 0. 자료구조 입문 & ADT

이번학기 자료구조론이 끝난 기념으로(?) 복습 겸 정리를 해보자..! 이번 챕터의 목표 ✅자료구조가 무엇인지 이해하기 ✅자료구조의 효율성을 판단하는 방법 알기 ✅Abstract Data Type(ADT)에 대해 이해하기 그럼 스타-투! 1. 자료구조 교수님께서 자료구조를 "데이터를 논리적으로 정리할 수 있는 방법과 효과적으로 데이터에 접근할 수 있는 기술을 제공해주는 자료들의 집합" 이라고 설명하셨다. 자료구조가 필요한 이유는 방대한 양의 데이터를 효율적으로 처리하기 위함이다. 자료구조를 듣고 놀랐던 건, 1년 내내 썼던 int, char등 자료형도 자료구조의 일부라는 것이었다. - Simple Data Type : 쪼갤 수 없는 것으로 전체가 하나를 나타내는 데에 다 사용되는 것 ex) integer,..

자료구조 2023.07.01
728x90