🖥️ CS, 개발상식/자료구조 14

[자료구조/C] 배열

배열이란? 동일한 타입의 데이터를 한 번에 여러개 만들 때 사용하는 자료형 배열을 사용하면 연속적인 메모리 공간이 할당되고, 배열 인덱스가 주어지기 때문에 인덱스를 사용하여 쉽게 접근이 가능하다. C언어에서의 1차원 배열 선언 : 자료형 배열이름[배열 요소의 개수] // int list[6], char string[7], Student sList[6]; 값 설정 : 배열이름[인덱스] = 값 // list[0] = 100; 값 반환 : 값을 저장할 변수 = 배열이름[인덱스] //Student s1 = sList[0]; 인덱스는 0부터 시작한다. 메모리 주소는 배열의 첫번째 요소가 기본 주소가 되고, 그 다음 요소부터 기본주소+n*sizeof(자료형)이 된다. ex: int list[6]에서 list[0]의..

[자료구조/C] 자료구조와 알고리즘, 추상자료형(ADT, abstract data type)

프로그램 = 자료구조 + 알고리즘 자료구조(data structure) 프로그램에서 자료를 정리하여 보관하는 구조(배열, 스택, 큐...) 알고리즘(algorithm) 컴퓨터로 문제를 해결하기 위한 단계적인 절차 문제와 컴퓨터가 주어진 상태에서 문제를 해결하는 방법을 장치가 이해할 수 있는 언어로 기술한 것 특정한 일을 수행하는 명령어들의 집합 알고리즘의 조건 입력 : 0개 이상의 입력이 존재해야 한다 출력 : 1개 이상의 출력이 존재해야 한다 명백성 : 각 명령어의 의미는 모호하지 않고 명확해야 한다 유한성 : 한정된 수의 단계 후에는 반드시 종료되어야 한다 유효성 : 각 명령어들은 실행 가능한(프로그래밍 언어로 바꿀수 있는) 연산이어야 한다. 자료형 : 데이터 + 데이터 간에 가능한 연산 추상 자료형..

[자료구조] 자료구조와 알고리즘

"프로그램 = 자료구조 + 알고리즘" 자료구조란? 컴퓨터 프로그램에서 자료들을 정리하여 보관하는 구조 예시 자료구조 물건을 쌓아서 보관하는 것 스택 마트 계산대의 대기 줄 큐 버킷 리스트 리스트 영어사전 사전 지도 그래프 컴퓨터의 디렉토리 구조 트리 알고리즘이란? 컴퓨터 프로그램에서 문제를 해결하는 단계적인 절차 문제와 컴퓨터가 주어진 상태에서 문제를 해결하는 방법을 정밀하게 장치가 이해할 수 있는 언어로 기술한 것 알고리즘이 되기 위한 조건 1. 입력 : 0개 이상의 입력 2. 출력 : 1개 이상의 출력 3. 명백성 : 각 명령어의 의미는 모호하지않고 명확해야한다. 4. 유한성 : 한정된 수의 단계 후에는 프로그램이 반드시 종료되어야 한다. 5. 유효성 : 각 명령어들은 글을 통해서 혹은 컴퓨터로 실행..

반응형