了解伪代码表示法

时间:2013-11-09 14:32:06

标签: pseudocode

我正在关注这些examples of C# code。但我对这个地方的伪代码评论感到困惑。

例如:

public void addToHead(Object value)
// pre: value non-null
// post: adds element to head of list
{
    SinglyLinkedListElement temp =
        new SinglyLinkedListElement(value);
    if (tail == null) {
        tail = temp;
        tail.setNext(tail);
    }
    else {
        temp.setNext(tail.next());
        tail.setNext(temp);
    }
    count++;
}

此处PrePost的含义是什么?

我从未见过这里使用的Post!我知道Post在Web和HTML等环境中的含义,但不是纯代码!

非常感谢任何帮助。

谢谢。

1 个答案:

答案 0 :(得分:1)

“Pre”表示在执行开始时做出的假设。在这种情况下,它表示传入的值假定为非空。

“Post”表示在执行结束时做出的假设,即例程实际执行的操作。在这种情况下,当例程完成时,新元素将被添加到列表的末尾。如果例程修改其参数或具有任何其他副作用,那么这些修改也应列在“帖子”中。