리스트 2

[자료구조] 연결 리스트

리스트의 개념 리스트 물품이나 사람의 이름 따위를 일정한 순서로 적어 놓은 것 어떤 정의에 의해서 결정된 논리적인 순서의 나열 리스트의 순서는 데이터가 저장되는 물리적인 위치와 상관없이 사람들의 머릿속에 인식되고 어떤 정의에 의해서 결정된 논리적인 순서, 혹은 리스트에 나타나는 원소들 간의 의미적인 순서를 의미함 배열 인덱스로 표현되는 추상적 순서가 원소의 메모리 공간(메인 메모리, DDR)의 물리적인 위치와 일치함 배열의 순서는 메모리 공간에서 저장되는 원소값의 물리적 순서 배열을 이용한 리스트의 구현 배열의 확장 초기 배열 선언에서 충분히 크게 하면 어느 정도는 배열의 추가 확장을 피할 수 있겠지만(메모리 낭비), 원소를 리스트의 중간에 삽입하기 위해서는 리스트의 원소값을 하나씩 뒤로 밀어야 하는 상..

[컴퓨터과학개론] 자료구조

자료구조 자료 사이의 논리적 관계를 컴퓨터나 프로그램에 적용하기 위해서는 자료의 추상화가 필요함 → 자료구조(data structure): 추상화를 통해 자료의 논리적 관계를 구조화한 것 자료가 복잡해지거나 소프트웨어가 복잡해질수록 자료구조의 중요성이 강조됨 추상화: 공통적인 개념을 이용하여 같은 종류의 다양한 객체를 정의하는 것 자료(데이터)의 추상화: 다양한 객체를 컴퓨터에서 표현하고 활용하기 위해 필요한 데이터의 구조에 대해서 공통의 특징만을 뽑아 정의한 것 자료의 추상화와 구조화가 적절히 이루어지지 못하면 소프트웨어는 비효율적으로 개발되거나 비효율적으로 수행되거나 소프트웨어의 확장성에 문제가 생기거나 소프트웨어의 유지보수에 문제가 생기거나 할 수 있음 미리 정의된 자료구조 프로그래밍 언어에서 제공..

CS 2023.11.19