我想开发一个冒泡排序功能,按字母顺序将字母重新排序为正确的顺序。
到目前为止,这是我的代码
(defn bubble [ys x]
(if-let [y (peek ys)]
(if (> y x)
(conj (pop ys) x y)
(conj ys x))
[x]))
(defn bubble-sort [xs]
(let [ys (reduce bubble [] xs)]
(if (= xs ys)
xs
(recur ys))))
我相信问题是>在(if (> y x)
行和(if (= xs ys)
行上的=。这使它想要一个数字而不是一个字母。
他们是否可以更改此代码以使其适用于字母?