본문 바로가기

CS23

스택(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.
입출력 시스템과 입출력장치 우리들은 입출력장치를 통해서 컴퓨터를 사용합이다 데이터를 컴퓨터의 외부로부터 읽어 들이는 것이 입력장치, 처리한 결과인 정보를 컴퓨터의 외부로 출력하는 것이 출력장치 입니다. 인간이 컴퓨터에서 처리를 실행하기 위한 중계를 하는 장치,구조,결정,사고를 총칭해서 맨머신인터페이스 라고 합니다. 인간은 컴퓨터시스템의 외부 존재이기 때문에 입출력장치는 맨머신인터페이스의 일부라고 생각됩니다. 입출력장치의 기능 인간은 옛날부터 문자를 사용해서 데이터와 정보를 표현했습니다. 문자(상형 문자) 는 영어와 숫자, 가나문자,한자 등을 말하고 인간이 직접 읽고 쓸 수 있다는 특징을 갖고 있기 때문에 데이터를 표현하기 좋게 하는 방법이라고도 할 수 있습니다. 이 때문에 컴퓨터에 입력하는 데이터와 컴퓨터의 출력 결과는 종래부터 .. 2023. 12. 6.