stack.empty_Java Stack empty()方法与示例

stack.empty

堆栈类empty()方法 (Stack Class empty() method)

  • empty() method is available in java.util package.

    empty()方法在java.util包中可用。

  • empty() method is used to check whether this stack is empty or not empty.

    empty()方法用于检查此堆栈是否为空。

  • empty() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.

    empty()方法是一个非静态方法,只能由类对象访问,如果尝试使用类名访问该方法,则会收到错误消息。

  • empty() method does not throw an exception at the time of checking empty status.

    在检查空状态时, empty()方法不会引发异常。

Syntax:

句法:

    public boolean empty();

Parameter(s):

参数:

  • It does not accept any parameter.

    它不接受任何参数。

Return value:

返回值:

The return type of the method is boolean, it returns true when this Stack is empty otherwise it returns false.

方法的返回类型为boolean ,当此Stack为空时返回true ,否则返回false

Example:

例:

// Java program to demonstrate the example 
// of boolean empty() method of Stack Class

import java.util.*;

public class IsEmptyOfStack {
 public static void main(String args[]) {
  // Instantiates Stack object
  Stack s = new Stack();

  // By using push() method isto
  // push the given onto the stack
  s.push(10);
  s.push(20);
  s.push(30);
  s.push(40);
  s.push(50);

  // Display Stack
  System.out.println("s:" + s);

  // By using isEmpty() method isto
  // check the empty status of the
  // Stack
  boolean status = s.isEmpty();

  // Display Status
  System.out.println("s.isEmpty(): " + status);
 }
}

Output

输出量

s:[10, 20, 30, 40, 50]
s.isEmpty(): false


翻译自: https://www.includehelp.com/java/stack-empty-method-with-example.aspx

stack.empty

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
class Node: def init(self, value=None, left=None, right=None): self.value = value self.left = left self.right = right class Stack: def init(self): self.items = [] def push(self, item): self.items.append(item) def pop(self): return self.items.pop() def peek(self): return self.items[-1] def is_empty(self): return len(self.items) == 0 def infix_to_postfix(infix): precedence = {'(': 0, 'AND': 1, 'OR': 1, 'NOT': 2} # 运算符优先级 postfix = [] stack = Stack() tokens = infix.split() for token in tokens: if token.isalnum(): postfix.append(token) elif token == '(': stack.push(token) elif token == ')': while stack.peek() != '(': postfix.append(stack.pop()) stack.pop() else: while not stack.is_empty() and precedence[stack.peek()] >= precedence[token]: postfix.append(stack.pop()) stack.push(token) while not stack.is_empty(): postfix.append(stack.pop()) return postfix def build_tree(postfix): stack = Stack() for token in postfix: if token.isalnum(): stack.push(Node(token)) else: right = stack.pop() left = stack.pop() stack.push(Node(token, left, right)) return stack.pop() def evaluate(node, values): if node.value.isalnum(): return values[node.value] else: left_value = evaluate(node.left, values) right_value = evaluate(node.right, values) if node.value == 'AND': return left_value and right_value elif node.value == 'OR': return left_value or right_value else: return not right_value def print_tree(node, indent=0): if node: print(' ' * indent + node.value) print_tree(node.left, indent + 2) print_tree(node.right, indent + 2) infix = 'A AND (B OR C) AND NOT D' postfix = infix_to_postfix(infix) print('Infix:', infix) print('Postfix:', postfix) tree = build_tree(postfix) print('Tree:') print_tree(tree) values = {'A': True, 'B': False, 'C': True, 'D': True} result = evaluate(tree, values) print('Result:', result)一句一句解释这段代码
06-08

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值