在clojure中rseq与反向
在of在clojure中rseq与反向,clojure,reverse,Clojure,Reverse,在ofrseq中提供的示例中,rseq反向的区别是什么?使用reverse而不是示例中的rseq可以获得相同的结果。rseq可能更快(恒定时间)但关键是它只能用于向量和排序映射。恒定时间是什么意思?恒定时间意味着性能不取决于数据结构的大小。也许值得指出的是,reverse需要线性时间,rseq本质上是惰性的。如何将整个序列反转为恒定时间?Clojure索引序列是否有方向字段或其他内容?@Sylwestera“sequence”是一个通用接口,针对不同的集合以不同的方式实现reverse返回一个列
rseq
中提供的示例中,rseq
反向的区别是什么?使用reverse
而不是示例中的rseq
可以获得相同的结果。rseq
可能更快(恒定时间)但关键是它只能用于向量和排序映射。恒定时间是什么意思?恒定时间意味着性能不取决于数据结构的大小。也许值得指出的是,reverse
需要线性时间,rseq
本质上是惰性的。如何将整个序列反转为恒定时间?Clojure索引序列是否有方向字段或其他内容?@Sylwestera“sequence”是一个通用接口,针对不同的集合以不同的方式实现reverse
返回一个列表(这是一个“意外”的“序列”,但它只是一个实现),它的给定序列被反转rseq
返回一个惰性序列,不保证计算其元素所需的时间。