Comment detail
フォルダパス一覧のツリー構造への変換 (Nested Flatten)This comment is reply for 4473 mamamoto: 作成はちょっと変則的なinjectと破壊...(フォルダパス一覧のツリー構造への変換). Go to thread root.
This comment is reply for 4473 mamamoto: 作成はちょっと変則的なinjectと破壊...(フォルダパス一覧のツリー構造への変換). Go to thread root.
sumim
#4475()
[
Smalltalk
]
Rating0/0=0.00
感動したので、Squeak Smalltalk に意訳させていただきました。
| pathList tree dumpTree | pathList := #('abc\def' 'abc\def\gh' 'abc\def\ij' 'abc\jk\lm' 'de'). tree := Dictionary new. pathList do: [:path | (path subStrings: #($\)) inject: tree into: [:tr :dir | tr at: dir ifAbsentPut: [Dictionary new]]]. dumpTree := [:tr :lev | tr keys asSortedCollection do: [:key | Transcript crtab: lev; show: key. (tr at: key) ifNotEmptyDo: [:child | dumpTree copy fixTemps value: child value: lev + 1]]]. World findATranscript: nil. dumpTree copy fixTemps value: tree value: 0 "=> abc def gh ij jk lm de "Rating0/0=0.00-0+