Проверка постфиксной записи?

С сервера WSUS, если на нем установлен модуль UpdateServices:

Import-Module UpdateServices

Get-WsusComputer -ComputerTargetGroups "GroupName"
7
задан Norman Ramsey 25 April 2009 в 22:41
поделиться

1 ответ

Здесь я предполагаю, что вы подразумеваете под valid , что выполнение кода никогда не опустошит стек и оставит одно значение в стеке. Если у вас есть более строгое понятие валидности, вам понадобится более сложная проверка.

Если вы хотите проверить на валидность такого рода, нет необходимости оценивать строку, и вы можете использовать счетчик , а не стек. Счетчик отслеживает количество значений, которые будут в стеке, если вы оцениваете. Для упрощения предположим, что у вас есть только литералы, бинарные операторы и унарные операторы. Этот алгоритм использует специальную операцию декремента : если при уменьшении счетчик становится меньше нуля, строка недопустима:

  1. Инициализировать счетчик равным 0.
  2. Когда вы видите литерал, увеличивайте счетчик.
  3. Когда вы видите бинарный оператор, уменьшите счетчик дважды, затем увеличьте его.
  4. Когда вы увидите унарный оператор, уменьшите счетчик, а затем увеличьте его.
  5. В конце строки, если счетчик равно 1, и если оно никогда не опускалось ниже 0, строка действительна.
13
ответ дан 6 December 2019 в 14:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: