【程序员升职记系列】字母排序

第 36 关,字母排序。指令集介绍请看:https://www.annhe.net/article-3828.html

优化目标

39行109步

代码

27行64步

此方案见 Github。说明如下:

  • 首先将第一个词读入
  • 巧妙的利用 INBOX 中的 0 初始化 22 号格子
  • 然后依次读入第二个词的字符,和第一个词对应位置比较,直接输出较小的
  • 通过 22 号减 23 号(23 号为第一个词的长度)判断长度,只有 22号-23号 为负的情况下(即第二个词较短),才有必要继续循环下去,如果不为负,说明第一个字符串已经结束了,那么程序也应该结束了。

流程图如下:

字母排序流程图
字母排序流程图

代码:

36行92步

第一次pass 47行118步

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注