如何将两个相互递归的函数相互更改为一个线性递归?我是否必须在单个方法中同时使用这两种方法?
例如,如果我输入字符序列
“你好世界” H = 1 e = 1 l = 3 o - 2 r = 1 w = 1 d = 1
有人能帮我吗
我在网上找到了这段代码,但我不明白它,我想要一个更简单的代码
(defun letter-freq (file)
(with-open-file (stream file)
(let ((str (make-string (file-length stream)))
(arr (make-array 256 :element-type 'integer :initial-element 0)))
(read-sequence str stream)
(loop for c across str do (incf (aref arr (char-code c))))
(loop for c from 32 to 126 for i from 1 do
(format t "~c: ~d~a"
(code-char c) (aref arr c) …Run Code Online (Sandbox Code Playgroud)