CS/자료구조7 스택(Stack) 스택은 LIFO(Last-In First-Out) 구조를 가진 자료구조입니다. 즉, 가장 나중에 들어온 데이터가 가장 먼저 나가는 방식으로 작동합니다. 마치 접시를 쌓아 올리는 것처럼, 가장 나중에 쌓은 접시가 가장 먼저 꺼내지는 것과 비슷하다고 생각하면 됩니다. 스택 명령어 명령어 설명 init() 스택을 초기화 push(e) 요소e를 스택의 맨 위에 추가한다. pop() 스택의 맨 위에 있는 요소를 꺼내 반환한다 그리고 반환하면서 무엇을 반환하는지 알려준다 is_empty 스탯이 비었으면 TRUE를 아니면 FALSE를 반환한다. is_full() 스택이 가득 차 있으면 TRUE를 아니면 FALSE를 반환한다 peek() 스택의 맨 위에 있는 항목을 삭제하지 않고 반환한다. 스택이 포화 상태이면 pus.. 2024. 3. 26. 배열과 구조체 배열 같은 타입의 값을 한꺼번에 여러 개 저장할수 있는 공간이입니다 여러 개의 저장 공간이 필요할때 각 변수를 독립적으로 선언하는것보단 배열을 이용해서 값들을 저장하여 사용하면 훨씬 편리합니다 배열에는 의 쌍의 집합으로 이루어 져있으며 인덱스는 그 배열안의 주소값 이라고 생각하면 편하며 주로 대부분의 프로그래밍 언어들은 인덱스 값이 0부터 시작합니다 즉 10의 크기의 배열이 있으면 0,1,2,3,4,5,6,7,8,9 까지의 인덱스를 가지고 있다라고 표현할수 있습니다 1차원 배열 흔히 사용하는 배열이며 사용하는 방법은 다음과 같습니다 int A[6]; //크기가 6인 int 배열 선언 A[2] =25; // A[2]에 25 저장 printf("%d",A[2]); // A[2]를 화면에 출력 2차원 배열 배.. 2024. 3. 19. 자료구조와 알고리즘 자료구조란? 간단하게 말해서 자료를 정리하여 보관하기 위해 여러 가지 구조를 이용한 것이 자료구조 라고 합니다 자료구조의 분류 자료구조는 숫자나 문자와 같은 단순 자료구조와 여러 자료를 한꺼번에 보관하는 복합 자료구조로 나눌 수 있습니다 주로 선형과 비선형으로 나눌수 있습니다 선형 자료구조 자료를 일렬로 나열할 수 있는 구조를 말합니다 자료들 사이에는 반드시 순서가 있어야 합니다 주로 스텍,큐,덱 은 자료의 접근이 전단과 후단으로만 제한되는 선형 자료구조이고, 리스트는 임의의 위치에 있는 자료의 접근을 허용하는 가장 자유로운 선형 자료구조입니다. 하지만 set(집합) 은 원소들 사이에 순서가 없으므로 선형 자료구조로 볼수없습니다. 비선형 자료구조 한 줄로 나열하기 어려운 복잡한 관계의 자료들을 표현할 수.. 2024. 3. 12. 이전 1 2 다음