问题标签 [flatten]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 仅将 java 类实例转换为原始类型
我想将一个实例从给定的 Java 类“展平”/转换为另一个仅包含原始类型的实例。
对象中还不是基本类型的每个字段也必须递归展平,以便生成的对象包含原始对象的展平视图,仅具有基本类型。
例如,给定以下类:
生成的实例将是以下类型:
我会期待这样的行为:
是否有任何工具/库能够做到这一点?
还是我需要使用我采用的反射 API 编写自己的扁平化器?
-- 编辑以下大多数评论 --
我更改了示例以避免与String
and混淆byte
(我不必处理字符串)。
我需要在结果转换中保留数据的语义。输出原始类型数据将直接参与使用 OpenCL 的并行计算,OpenCL 只理解原始数据类型。
换句话说,我需要打破封装,直接操作嵌入在类层次结构中的原始数据类型。
php - 如何在 PHP 中展开多维数组(原始键访问路径存储为单个键)?
我正在使用以下函数来展平多维数组:
我想创建一个匹配函数,unflatten
它将反转该过程(例如,如果键中有 a .
,则创建一个子数组)。有任何想法吗?
php - 无法展平具有大量重复项的多维数组
我正在尝试创建一个脚本,该脚本基于输入创建包含字母表中的一个和两个其他字符a??
的所有单词的所有组合和排列的数组。a
值如a
, ab
, ba
,dab
等bga
- 您可能会看到数组包含(或应该包含)数量怪异的值。
问题是我在脚本中使用的函数输出的值更多,并且有很多重复项。由于某种原因,我无法创建没有重复的扁平数组。我尝试使用array_unique()
,但在这里不起作用。我尝试使用explode()
并implode()
展平结果数组,但没有成功。即使我成功地从值创建了一个字符串,当我尝试将该字符串转换为一个数组时,结果仍然是实际的多维数组。
这让我发疯,正如你看到的代码,我是 PHP 的初学者。
高度赞赏将实际多维数组转换为没有重复的扁平数组的任何帮助。一个例子:实际上数组包含12168个子数组,只有字符串a
出现了1456次。我需要的是一个没有子数组并且每个结果只包含一次的数组。
cuda - 非方阵的二维内核调用和启动参数
我正在尝试将以下(简化的)嵌套循环移植为 CUDA 2D 内核。数据集的大小将随着更大的数据集NgS
而增加;NgO
现在我只想让这个内核为所有值输出正确的结果:
我遇到的示例通常处理方形循环,与 CPU 版本相比,我无法获得所有 GPU 数组索引的正确输出。这是调用内核的主机代码:
这是内核:
使用当前代码,我继续将Result_cpu
变量与Result_gpu
复制回来的变量进行比较。当我循环浏览我得到的值时:
无论 的值如何,这种模式都是相同的NgO
。我一直试图通过查看各种示例并尝试更改来找出我犯了错误的地方,但到目前为止,这个方案已经有效地减去了手头的明显问题,而其他方案已经导致内核调用错误/离开GPU 数组未对所有值进行初始化。由于我显然看不到错误,如果有人能指出我正确的方向来解决问题,我将不胜感激。我很确定它就在我的鼻子下面,我看不到它。
万一这很重要,我正在 Kepler 卡上测试此代码,使用 MSVC 2010、CUDA 4.2 和 304.79 驱动程序进行编译,并使用两者arch=compute_20,code=sm_20
和arch=compute_30,code=compute_30
标志编译代码,没有区别。
iphone - 如何从 UILabel 创建图像?
我目前正在iphone上开发一个简单的photoshop之类的应用程序。当我想展平我的图层时,标签的位置很好,但字体大小很差。这是我要展平的代码:
任何人都可以帮助我吗?
iterator - 扁平化迭代器是什么意思?
我想知道展平例如展平迭代器的迭代器意味着什么。你能告诉我吗?是否有任何 C/Java/Python 习语?
python - 展平 Python 列表而不创建任何对象的副本?
所以我正在用 Python 编写一个游戏,而我试图解决的一个问题需要我将 2D 列表(即列表列表)转换为 1D 列表。我已经看到了几种方法来做到这一点,但我不知道它们中的任何一个是否创建了其中包含的任何对象的副本,或者只是新的引用。老实说,Python 标准库让我感到困惑,因为对象/序列是被复制还是只是被引用填充并不总是很明显。
这些是关于我的特殊情况的假设;
- 我们可以假设我的二维列表(如果表示为矩阵)是完美的矩形。
- 如果我能有一个上述假设不成立的解决方案,那就太好了,但目前不需要。
- 无需担心 3D+ 列表。
谢谢!
c# - 使用 LINQ 的对象层次结构的深度优先扁平化集合
我有一个对象层次结构(MasterNode -> ChildNodes),其中主节点和子节点属于同一类型,并且只有两个级别(顶级和子级)像这样('A' 是 D、E 和 F 的父级,' B' 是 G 的父级,等等)
假设我有一个MasterNodes作为父对象(A,B,C)的 IEnumerable,并且给定一个父对象X,我可以通过X.children获得其子对象的 IEnumerable
我知道我可以使用SelectMany方法或使用枚举所有叶子(子节点)
这会给我这个序列:
,但这不是我要的。
获取 MasterNodes 集合中对象的深度优先序列的 LINQ 查询是什么?(返回第一个父母,然后是它的所有孩子,然后是下一个父母,然后是它的所有孩子等等)
预期的结果应该是这样的序列:
更新:
我要求纯 .NET 就绪的 LINQ。我知道我可以定义自己的方法来做事,但我想要一些仅基于框架提供的方法的东西。
python - python - 展平和解压列表
这是我的一些代码,它们真的很难看,我希望有人能告诉我如何让它变得更好。我隐约知道如何修复此代码,但在实践中无法获得任何改进。
#我认为我需要做的是将list1、array2 和array3 附加到一个列表中,然后以某种方式将其展平。然后以某种方式用一个命令将整个列表解压缩到表中......谢谢!
scala - Scala - 将列表列表转换为单个列表:List[List[A]] 到 List[A]
在 scala (2.9) 中转换列表的最佳方法是什么?
我有一个清单:
我想转换成
如何递归实现?或者有没有其他更好的方法?