JavaScript에서 스택 구현

Javascripteseo Seutaeg Guhyeon



스택은 LIFO의 원리를 따르는 선형 데이터 구조입니다. LIFO는 Last In First Out의 약자로 가장 최근에 추가된 항목이 가장 먼저 제거된다는 의미입니다. 이 데이터 구조는 실제 스택에 비유하여 스택이라는 이름이 붙여졌습니다. 스택에서 삽입 및 추출은 스택의 맨 위인 한쪽 끝에서만 수행할 수 있습니다. 예를 들어 쿠키를 먹고 싶다면 맨 위에 있는 쿠키를 먼저 먹고 두 번째 쿠키를 얻는 식입니다.

이 게시물은 JavaScript의 스택 구현에 대한 모든 것입니다. JavaScript로 작업할 때 JavaScript 객체의 크기가 동적으로 커질 수 있으므로 스택 크기에 대해 걱정하지 않을 것입니다.







JavaScript에서 스택 구현

JavaScript 클래스를 사용하여 스택 데이터 구조를 구현합니다. 그만큼 스택 클래스는 스택에 요소를 저장하는 데 사용되는 생성자에 배열을 포함합니다. 이 클래스는 스택 내부에 저장된 데이터를 조작하는 데 사용할 다양한 메서드도 정의합니다. 배열의 가장 기본적인 방법은 다음과 같습니다. 끼워 넣다() 그리고 발췌() 스택의 맨 위에서 요소를 추가하고 제거하는 데 사용되는 메서드.



그만큼 스택 클래스는 다음과 같은 다른 메서드도 정의합니다. 몰래 엿보다() , 비었다() , 분명한() , 인쇄() 그리고 크기() 또한:



클래스 스택 {
건설자 ( ) {

this.elements = [ ] ;

}

// // 스택 맨 위에 항목을 놓습니다.

끼워 넣다 ( 요소 ) {

this.elements.push ( 요소 ) ;

}

// // 스택의 맨 위에서 항목을 제거합니다.

발췌 ( ) {

this.elements.pop ( ) ;

}

// // 스택의 최상위 요소를 반환

몰래 엿보다 ( ) {

반품 this.elements [ this.elements.length - 1 ] ;

}
// // 체크 무늬 만약에 스택이 비어 있습니다

비었다 ( ) {

반품 this.elements.length == 0 ;

}

// // 전체 스택을 인쇄합니다.

인쇄 ( ) {
~을 위한 ( 허락하다 나는 = 0 ; 나 < this.elements.length; 나는 ++ ) {
console.log ( this.elements [ ] ) ;
}

}
// // 반환 크기 스택의

크기 ( ) {

반품 this.elements.length;

}

// // 스택을 지운다

분명한 ( ) {
this.elements = [ ] ;
}

}

스택에서 요소 푸시 및 팝핑

스택의 가장 기본적인 작업은 스택의 맨 위에서 요소를 삽입하고 추출하는 것입니다. 스택 클래스는 이러한 작업에 대해 두 가지 메서드를 제공합니다.


위에서 언급한 코드의 첫 번째 줄은 이라는 이름의 새 스택을 선언합니다. 에스 . 그런 다음 끼워 넣다() 메서드는 스택에 4개의 요소를 삽입하는 데 사용되며, 그 중 2개는 다음으로 제거됩니다. 발췌() 방법.

스택에서 최상위 요소를 얻는 방법

그만큼 스택 클래스 정의 몰래 엿보다() 스택에서 최상위 요소를 가져오는 방법:


스택이 비어 있는지 확인하는 방법은 무엇입니까?

이 클래스는 스택이 비어 있는지 확인하는 데 사용할 수 있는 메서드도 정의합니다.


전체 스택을 인쇄하는 방법은 무엇입니까?

그만큼 인쇄() 메서드를 호출하여 전체 스택을 인쇄할 수 있습니다.


스택의 크기를 확인하는 방법은 무엇입니까?

그만큼 크기() 방법은 .길이 스택의 크기를 가져오는 속성:


전체 스택을 지우는 방법?

단순히 호출 분명한() 스택의 모든 요소를 ​​제거하는 방법:

결론

스택은 브라우저 기록, 텍스트 편집기의 실행 취소 버튼 및 통화 기록과 같은 많은 실제 응용 프로그램이 있는 유용한 데이터 구조입니다. 이러한 모든 애플리케이션은 LIFO 원칙을 따릅니다. 예를 들어 브라우저의 뒤로 버튼은 마지막으로 방문한 페이지로 돌아가고 통화 기록의 첫 번째 항목은 항상 최신 통화입니다.

JavaScript의 스택 구현은 내장되어 있기 때문에 정말 쉽습니다. 푸시 그리고 배열에 대한 메서드. 이 기사는 JavaScript에서 스택을 구현하는 과정을 보여줍니다.