14
A
回答
18
列表以二維數組:
(defun list-to-2d-array (list)
(make-array (list (length list)
(length (first list)))
:initial-contents list))
2D陣列以列出:
(defun 2d-array-to-list (array)
(loop for i below (array-dimension array 0)
collect (loop for j below (array-dimension array 1)
collect (aref array i j))))
列表到2d的多維表單很容易。
(defun list-dimensions (list depth)
(loop repeat depth
collect (length list)
do (setf list (car list))))
(defun list-to-array (list depth)
(make-array (list-dimensions list depth)
:initial-contents list))
要列出的數組更復雜。
也許是這樣的:
(defun array-to-list (array)
(let* ((dimensions (array-dimensions array))
(depth (1- (length dimensions)))
(indices (make-list (1+ depth) :initial-element 0)))
(labels ((recurse (n)
(loop for j below (nth n dimensions)
do (setf (nth n indices) j)
collect (if (= n depth)
(apply #'aref array indices)
(recurse (1+ n))))))
(recurse 0))))
7
另一個二維數組列出的解決方案:
(defun 2d-array-to-list (array)
(map 'list #'identity array))
和列表,以二維數組(但也許不是一樣有效,最後回覆的解決方案):
(defun list-to-2d-array (list)
(map 'array #'identity list))
相關問題
- 1. 轉換字符串列表Common Lisp中
- 2. common lisp如何轉換其餘參數列表
- 3. 在Common Lisp中轉置列表
- 4. Emacs Lisp和Common Lisp之間的主要區別是什麼?
- 5. 調用的函數Common Lisp的列表
- 6. 傳遞函數列表中的Common Lisp
- 7. 子列表Common Lisp中
- 8. 將Common Lisp的代碼轉換爲Scheme
- 9. common lisp和emacs
- 10. 替換Common Lisp中
- 11. 將列表理解轉換爲Common Lisp循環
- 12. 將Little Schemer的Q和P函數轉換爲Common Lisp?
- 13. Common Lisp的 - 在列表列出
- 14. Common Lisp的串聯和換行符
- 15. asdf building和Common Lisp
- 16. Common Lisp中的圓形列表
- 17. let *和set之間的區別?在Common Lisp
- 18. Common Lisp和Scheme中deftype之間的區別
- 19. Common Lisp a Lisp-n?
- 20. 如何轉換字符串Common Lisp中列出
- 21. 在NumPy和JPype之間轉換數組?
- 22. Clojure,Scheme/Racket和Common Lisp之間有什麼區別?
- 23. 將整數轉換爲Common Lisp中的字符
- 24. Common Lisp中,列表處理(追加等)
- 25. Common Lisp從列表中創建矩陣
- 26. 在Common Lisp中合併列表項(Clisp)
- 27. common lisp - 在列表中替換相同的值
- 28. 如何將字節數組轉換爲Common Lisp中的字符串?
- 29. Common Lisp - 配置slime和emacs
- 30. LISP - 將數組表示的字符串轉換爲數組
謝謝你 - 任何想法的xd數組/列表? – mck 2012-03-03 20:54:57
@mck:指定您想要的級別,並將正確的維度列表提供給MAKE-ARRAY。 – 2012-03-03 21:08:54
那需要爲3d數組寫一個單獨的函數? – mck 2012-03-03 21:54:51