Merge pull request #133 from tao363/master

Update array stack
This commit is contained in:
Yudong Jin
2022-12-20 14:14:44 +08:00
committed by GitHub
9 changed files with 46 additions and 34 deletions

View File

@@ -11,6 +11,7 @@ class ArrayStack {
constructor() {
this.stack = [];
}
/* 获取栈的长度 */
get size(): number {
return this.stack.length;
@@ -28,16 +29,19 @@ class ArrayStack {
/* 出栈 */
pop(): number | undefined {
if (this.empty()) throw new Error('栈为空');
return this.stack.pop();
}
/* 访问栈顶元素 */
top(): number | undefined {
if (this.empty()) throw new Error('栈为空');
return this.stack[this.stack.length - 1];
}
/* 访问索引 index 处元素 */
get(index: number): number | undefined {
if (index >= this.size) throw new Error('索引越界');
return this.stack[index];
}
@@ -83,4 +87,4 @@ console.log("栈的长度 size = " + size);
const empty = stack.empty();
console.log("栈是否为空 = " + empty);
export { };
export { };