gpt4 book ai didi

algorithm - 如何在 Clojure 中删除向量中的顺序匹配项?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:35:34 24 4
gpt4 key购买 nike

假设我有一个向量["a""b""c""a""a""b"]。如果给定一个序列 ["a""b"],我该如何删除该序列的所有实例(按顺序)?在这里,结果将只是 ["c""a"]

最佳答案

如果预先知道需要删除的序列,core.match 可能对您的任务有用:

(require '[clojure.core.match :refer [match]])

(defn remove-patterns [seq]
(match seq
["a" "b" & xs] (remove-patterns xs)
[x & xs] (cons x (remove-patterns xs))
[] ()))


(remove-patterns ["a" "b" "c" "a" "a" "b"]) ;; => ("c" "a")

关于algorithm - 如何在 Clojure 中删除向量中的顺序匹配项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36359849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com