하나의 배열을 이용해 세 개의 스택 만들기

HDNua의 이미지

이번엔 질문은 아니고, 책에서 본 재밌는 프로그래밍 문제가 있어서 왔습니다.

하나의 배열을 이용해 스택을 세 개 만들라는 내용인데,
예전 어셈블리 공부할 때 배웠던 스택 지식과, 스택-힙은 서로 만나도록 만든다는 교수님 설명을 이용해 재미있게 풀 수 있었네요.

저 같은 경우 [head->bottom|bottom->head|head<-bottom]과 같은 형식으로 해결했는데, 이외에 다른 방법이 있을까요?
제 풀이는 첨부하였습니다.

File attachments: 
첨부파일 크기
Package icon Program.zip2.59 KB
HDNua의 이미지

1. Pop할 때마다 값에 nulldata를 넣는 건 ViewMemory에서 변화를 알기 쉽게 하려는 목적이고 별 뜻은 없습니다.
2. 이전 파일에 잘못된 부분과 완성하지 않은 부분이 있어서 수정해보았습니다.

댓글 첨부 파일: 
첨부파일 크기
Package icon Program.zip2.79 KB

저는 이렇게 생각했습니다.