GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — JavaScript/Data-Structures/Stack/Stack.js at master · TheAlgorithms/JavaScript Expand file tree/ Copy pathStack.jsMore file actions 55 lines (46 loc) · 1.21 KB / Copy pathStack.jsFile metadata and controls55 lines (46 loc) · 1.21 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 /* Stack!! * A stack is exactly what it sounds like. An element gets added to the top of * the stack and only the element on the top may be removed. This is an example * of an array implementation of a Stack. So an element can only be added/removed * from the end of the array. */ // Functions: push, pop, peek, view, length // Creates a stack constructor class Stack { constructor() { // The top of the Stack this.top = 0 // The array representation of the stack this.stack = [] } // Adds a value onto the end of the stack push(value) { this.stack[this.top] = value this.top++ } // Removes and returns the value at the end of the stack pop() { if (this.top === 0) { return 'Stack is Empty' } this.top-- const result = this.stack[this.top] this.stack = this.stack.splice(0, this.top) return result } // Returns the size of the stack size() { return this.top } // Returns the value at the end of the stack peek() { return this.stack[this.top - 1] } // To see all the elements in the stack view(output = (value) => console.log(value)) { for (let i = 0; i < this.top; i++) { output(this.stack[i]) } } } export { Stack } |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |