c stack 예제

Количество просмотров: 74

Автор Antonenko Andrii в . Опубликовано Без рубрики

NULL에 대한 포인터를 테스트하여 공간이 할당되었는지 확인하는 방법에 유의하십시오. 또한 스택이 참조로 전달되지 않으면 해당 필드를 변경할 수 없습니다. 우리는 물리적 인 비유의 관점에서 스택을 생각하기 때문에, 우리는 일반적으로 수직으로 그립니다 (그래서 상단은 정말 상단에). 동적 데이터 구조의 좋은 예는 동적 목록을 사용하고 시작하고 지우고 푸시하고 팝하는 함수를 포함하는 간단한 스택 라이브러리입니다. 라이브러리의 헤더 파일은 다음과 같습니다: 추상 스택(및 일반적인 이름)에 필요한 최소한의 작업은 다음과 같습니다. 스택을 구현하기 시작하면 이러한 것이 명백해집니다. 각 스택 함수에 대한 프로토타입을 stack.h에 넣고 함수 정의(본문)를 stack.c에 배치해야 합니다. 그러나 일부 스택 함수는 포인터를 사용합니다 (예 : StackInit (등)에 필요한 경우) 일부는 그렇지 않습니다. 항상 참조(포인터)로 스택을 전달하는 것이 더 일관적입니다. 또한 구조 스택T가 큰 경우 큰 구조체를 복사할 필요가 없으므로 포인터를 전달하는 것이 더 효율적입니다.

이 섹션의 C 프로그램은 스택의 다른 구현을 보여 줍니다. 여기에는 MACROS를 사용하여 스택 작업을 설명하고 동적 메모리 할당을 사용하여 스택의 작업을 구현하는 프로그램이 포함되어 있습니다. 주로 다음 세 가지 기본 작업이 스택에서 수행됩니다: 위의 인터페이스 이외에 다른 구현 요구 사항은 모든 스택 작업이 일정한 시간 O(1)에서 실행되어야 한다는 것입니다. 상수 시간은 스택 크기에 관계없이 연산시간이 k나노초가 소요되도록 일정한 k가 있음을 의미합니다. 스택 함수의 세부 사항을 숙고하기 전에 필요한 형식을 결정해야 합니다… 공허함과 충만함을 결정하는 기능을 살펴봅시다. 이제 스택을 변경하지 않으므로 이러한 함수를 참조하여 스택을 전달할 필요가 없습니다. 따라서 이 배열이 충분합니까, 아니면 스택에 관한 더 많은 정보를 저장해야 합니까? 순환 큐 구현은 분할의 나머지 부분을 취하여 계산되는 modulo 연산자(표시%)를 사용하여 수행됩니다(예: 8%5는 3).

Другие записи раздела:

  • b+트리 예제 (0)
    j$k582668j$kB-트리의 각 내부 노드에는 여러 키가 포함되어 있습니다. 키는 하위 트리를 […]
  • Modele demande de remboursement free (0)
    j$k458743j$kDans de rares cas et seulement dans les 30 […]
  • d3 차트 예제 (0)
    j$k567072j$k가로 차트는 방향에 따라 가로 또는 세로가 될 수 있습니다. 나는 일명 일명 열 […]
  • filewriter 예제 (0)
    j$k567629j$k악센트는 10 개의 문자열의 배열이며 결과는 10 개의 float 숫자 배열입니다. […]
  

Трекбэк с Вашего сайта.