zoukankan      html  css  js  c++  java
  • 栈的实现:

    class Stack {
      constructor() {
        this.store = [];
        this.top = 0;
      }
    
      push(item) {
        this.store[this.top++] = item;
        return this.store;
      }
    
      pop() {
        return this.store[--this.top];
      }
    
      peek() {
        return this.store[this.top - 1];
      }
    
      size() {
        return this.top;
      }
    
      claer() {
        this.store = [];
        this.top = 0;
      }
    }
    
    const stack = new Stack();
    
    stack.push('shang');
    stack.push('yy');
    console.log(stack.push('big'));
    console.log(stack.peek());
    console.log(stack.size());

    二、栈的应用

    // 进制转换 10进制转换成其他进制
    
    function dataconverse(data, base) {
      const stack = [];
      let num = data;
      do {
        stack.push(num % base);
        num = Math.floor(num / base);
      } while (num > 0);
      return stack.reduceRight((per, cur) => {
        return per + cur;
      }, '');
    }
    const result = dataconverse(125, 8);
    console.log(result);
    
    // 判断是回文
    function isPalindrome(word) {
      const stack = [];
      for (let i = 0; i < word.length; i++) {
        stack.push(word[i]);
      }
      return stack.join('') === word;
    }
    
    console.log(isPalindrome('1001'));
    function isPalindrome1(word) {
      return (
        word
          .split('')
          .reverse()
          .join('') === word
      );
    }
    console.log(isPalindrome1('110011'));
  • 相关阅读:
    C语言博客作业04--数组
    DS博客作业04--树大作业
    Java课程设计
    JAVA课设-五子棋-团队博客
    yue
    Java扫雷设计
    java课设--五子棋
    软件工程-个人总结
    JAVA课程设计个人博客
    JAVA第09次实验(IO流)
  • 原文地址:https://www.cnblogs.com/shangyueyue/p/10911809.html
Copyright © 2011-2022 走看看