본문 바로가기
반응형

Stack3

[자바] 메모리 영역 Static, Stack, Heap Static 영역 Java 파일은 크게 필드(field), 생성자(constructor), 메서드(method)로 구성되어 있다. Static 영역은 그 중 필드 부분에서 선언된 전역변수와 정적 맴버 변수(static 으로 선언되는 것)들의 데이터를 메모리에 상주시킨다. 상수 개념의 static과 의미를 묶어서 보면 도움이 된다.(아래 참고 포스팅 참고) 정적 맴버 변수 = Static 변수와 Static 메서드가 합쳐진 것 (=클래스 멤버) 객체에 소속된 맴버가 아닌 클래스에 고정된 맴버다. 클래스 정보(맴버변수의 이름), static변수, 변수 정보(데이터타입, 접근제어자정보), 메서드 정보 등을 저장한다. static (전역)변수는 어디서든 접근이 가능하기 때문에 가능한 무분별한 사용을 하지 않는 .. 2023. 6. 28.
python 에서의 stack 사용 python 에서 stack를 사용하려고 보니 자바에서처럼 따로 기능이 존재하지 않았다. 그래서 알아본 결과 리스트를 사용해서 스택처럼 사용하면 되는것이었다. 스택에 대한 개념은 아래 참고 포스팅을 활용하는것을 추천하고, 해당 포스팅에서는 리스트를 스택처럼 사용하는 법을 작성해보려고 한다. 일단 파이썬에서 스택으로 사용할 빈 리스트를 하나 만들어준다. stack = [] 스택에 원소를 집어넣은것은 push라고 하며 파이썬에서 push는 다음처럼 하면 된다. stack = [1,2] stack.append(3) stack #[1,2,3] 스택에서 원소를 꺼내는것을 pop이라고 하며 파이썬에서 pop은 다음과 같이 하면 된다. stack = [1,2,3] top = stack.pop() print(top) .. 2022. 9. 13.
스택(Stack), 큐(Queue), 힙(Heap) 에 대해서 자료구조 알고리즘을 하다보면 스택, 힙, 큐에 대해서 많이 얘기를 들어봤을텐데 오늘 포스팅에서는 하나씩 설명을 해보려고 한다. 스택 선형 자료구조 Last In First out(LIFO) 구조 스택 특징 같은 구조의 같은 크기의 자료를 정해진 방향으로만 쌓을 수 있음 top으로 정한 곳을 통해서만 접근 가능(top이란 가장 쌓아둔 윗부분) 삭제는 top을 통해서만 가능 스택 연산 삭제 (pop()) : 스택에서 가장 위에 있는 항목을 제거 삽입 (push(item)) : item 하나를 스택의 가장 윗부분에 추가 읽기 (peek()) : 스택의 가장 위에 있는 항목을 반환 스택 포인터(SP) push나 pop을 할 때 해당 값의 위치를 알고 있어야 하는데 스택 포인터가 위치를 기억하고 처음 기본값은 -.. 2022. 8. 30.
반응형