gpt4 book ai didi

wolfram-mathematica - 对所有表达水平进行排序

转载 作者:行者123 更新时间:2023-12-04 08:01:02 25 4
gpt4 key购买 nike

对表达式的所有级别进行排序的好方法是什么?当表达式具有矩形结构时,以下执行我想要的操作,但我希望它也适用于非矩形表达式

Map[Sort, {expr}, Depth[expr] - 1]

例如,以下应打印 True
sorted = deepSort[{{{1, 3, 8}, {3, 7, 6}, {10, 4, 9}, {3, 8, 10, 
6}, {8, 2, 5, 10}, {8, 5, 10,
9}}, {{{1, 3, 8}, {3, 8, 10, 6}}, {{3, 7, 6}, {3, 8, 10,
6}}, {{10, 4, 9}, {8, 5, 10, 9}}, {{3, 8, 10, 6}, {8, 2, 5,
10}}, {{8, 2, 5, 10}, {8, 5, 10, 9}}}}];
checkSortedLevel[k_] := Map[OrderedQ, sorted, {k}];
And @@ Flatten[checkSortedLevel /@ Range[0, 2]]

最佳答案

deepSort[expr_] := Map[Sort, expr, {0, -2}]
请注意,即使您的 expr 包含 List 以外的头,这也将起作用。

关于wolfram-mathematica - 对所有表达水平进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4939120/

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